org.apache.xml.security.c14n.implementations
Class Canonicalizer11
java.lang.Object
org.apache.xml.security.c14n.CanonicalizerSpi
org.apache.xml.security.c14n.implementations.CanonicalizerBase
org.apache.xml.security.c14n.implementations.Canonicalizer11
- Direct Known Subclasses:
- Canonicalizer11_OmitComments, Canonicalizer11_WithComments
public abstract class Canonicalizer11
- extends CanonicalizerBase
Implements
Canonical XML Version 1.1, a W3C Proposed Recommendation from 29
January 2008.
- Author:
- Sean Mullan, Raul Benito
Constructor Summary |
Canonicalizer11(boolean includeComments)
Constructor Canonicalizer11 |
Methods inherited from class org.apache.xml.security.c14n.implementations.CanonicalizerBase |
canonicalizeSubTree, canonicalizeXPathNodeSet, engineCanonicalize, engineCanonicalizeSubTree, engineCanonicalizeSubTree, engineCanonicalizeXPathNodeSet, getParentNameSpaces, isVisible, isVisibleDO, isVisibleInt, outputAttrToWriter, outputCommentToWriter, outputPItoWriter, outputTextToWriter, setWriter |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Canonicalizer11
public Canonicalizer11(boolean includeComments)
- Constructor Canonicalizer11
- Parameters:
includeComments
-
engineCanonicalizeXPathNodeSet
public byte[] engineCanonicalizeXPathNodeSet(java.util.Set<org.w3c.dom.Node> xpathNodeSet,
java.lang.String inclusiveNamespaces)
throws CanonicalizationException
- Always throws a CanonicalizationException because this is inclusive c14n.
- Specified by:
engineCanonicalizeXPathNodeSet
in class CanonicalizerSpi
- Parameters:
xpathNodeSet
- inclusiveNamespaces
-
- Returns:
- none it always fails
- Throws:
CanonicalizationException
- always
engineCanonicalizeSubTree
public byte[] engineCanonicalizeSubTree(org.w3c.dom.Node rootNode,
java.lang.String inclusiveNamespaces)
throws CanonicalizationException
- Always throws a CanonicalizationException because this is inclusive c14n.
- Specified by:
engineCanonicalizeSubTree
in class CanonicalizerSpi
- Parameters:
rootNode
- inclusiveNamespaces
-
- Returns:
- none it always fails
- Throws:
CanonicalizationException
handleAttributesSubtree
protected java.util.Iterator<org.w3c.dom.Attr> handleAttributesSubtree(org.w3c.dom.Element element,
NameSpaceSymbTable ns)
throws CanonicalizationException
- Returns the Attr[]s to be output for the given element.
The code of this method is a copy of handleAttributes(Element,
NameSpaceSymbTable)
,
whereas it takes into account that subtree-c14n is -- well --
subtree-based.
So if the element in question isRoot of c14n, it's parent is not in the
node set, as well as all other ancestors.
- Parameters:
element
- ns
-
- Returns:
- the Attr[]s to be output
- Throws:
CanonicalizationException
handleAttributes
protected java.util.Iterator<org.w3c.dom.Attr> handleAttributes(org.w3c.dom.Element element,
NameSpaceSymbTable ns)
throws CanonicalizationException
- Returns the Attr[]s to be output for the given element.
IMPORTANT: This method expects to work on a modified DOM tree, i.e. a
DOM which has been prepared using
XMLUtils.circumventBug2650(
org.w3c.dom.Document)
.
- Parameters:
element
- ns
-
- Returns:
- the Attr[]s to be output
- Throws:
CanonicalizationException
circumventBugIfNeeded
protected void circumventBugIfNeeded(XMLSignatureInput input)
throws CanonicalizationException,
javax.xml.parsers.ParserConfigurationException,
java.io.IOException,
org.xml.sax.SAXException
- Throws:
CanonicalizationException
javax.xml.parsers.ParserConfigurationException
java.io.IOException
org.xml.sax.SAXException
handleParent
protected void handleParent(org.w3c.dom.Element e,
NameSpaceSymbTable ns)
- Overrides:
handleParent
in class CanonicalizerBase