org.apache.xml.security.c14n.implementations
Class Canonicalizer20010315

java.lang.Object
  extended by org.apache.xml.security.c14n.CanonicalizerSpi
      extended by org.apache.xml.security.c14n.implementations.CanonicalizerBase
          extended by org.apache.xml.security.c14n.implementations.Canonicalizer20010315
Direct Known Subclasses:
Canonicalizer20010315OmitComments, Canonicalizer20010315WithComments

public abstract class Canonicalizer20010315
extends CanonicalizerBase

Implements Canonical XML Version 1.0, a W3C Recommendation from 15 March 2001.

Author:
Christian Geuer-Pollmann

Field Summary
 
Fields inherited from class org.apache.xml.security.c14n.implementations.CanonicalizerBase
COMPARE, NODE_AFTER_DOCUMENT_ELEMENT, NODE_BEFORE_DOCUMENT_ELEMENT, NODE_NOT_BEFORE_OR_AFTER_DOCUMENT_ELEMENT, XML, XMLNS
 
Fields inherited from class org.apache.xml.security.c14n.CanonicalizerSpi
reset, secureValidation
 
Constructor Summary
Canonicalizer20010315(boolean includeComments)
          Constructor Canonicalizer20010315
 
Method Summary
protected  void circumventBugIfNeeded(XMLSignatureInput input)
           
 byte[] engineCanonicalizeSubTree(Node rootNode, String inclusiveNamespaces)
          Always throws a CanonicalizationException because this is inclusive c14n.
 byte[] engineCanonicalizeSubTree(Node rootNode, String inclusiveNamespaces, boolean propagateDefaultNamespace)
          Always throws a CanonicalizationException because this is inclusive c14n.
 byte[] engineCanonicalizeXPathNodeSet(Set<Node> xpathNodeSet, String inclusiveNamespaces)
          Always throws a CanonicalizationException because this is inclusive c14n.
protected  Iterator<Attr> handleAttributes(Element element, NameSpaceSymbTable ns)
          Returns the Attr[]s to be output for the given element.
protected  Iterator<Attr> handleAttributesSubtree(Element element, NameSpaceSymbTable ns)
          Returns the Attr[]s to be output for the given element.
protected  void handleParent(Element e, NameSpaceSymbTable ns)
           
 
Methods inherited from class org.apache.xml.security.c14n.implementations.CanonicalizerBase
canonicalizeSubTree, canonicalizeXPathNodeSet, engineCanonicalize, engineCanonicalizeSubTree, engineCanonicalizeSubTree, engineCanonicalizeXPathNodeSet, getNullNode, getParentNameSpaces, isVisible, isVisibleDO, isVisibleInt, outputAttrToWriter, outputCommentToWriter, outputPItoWriter, outputTextToWriter, setWriter
 
Methods inherited from class org.apache.xml.security.c14n.CanonicalizerSpi
engineCanonicalize, engineCanonicalizeXPathNodeSet, engineCanonicalizeXPathNodeSet, engineGetIncludeComments, engineGetURI, isSecureValidation, setSecureValidation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Canonicalizer20010315

public Canonicalizer20010315(boolean includeComments)
Constructor Canonicalizer20010315

Parameters:
includeComments -
Method Detail

engineCanonicalizeXPathNodeSet

public byte[] engineCanonicalizeXPathNodeSet(Set<Node> xpathNodeSet,
                                             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(Node rootNode,
                                        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

engineCanonicalizeSubTree

public byte[] engineCanonicalizeSubTree(Node rootNode,
                                        String inclusiveNamespaces,
                                        boolean propagateDefaultNamespace)
                                 throws CanonicalizationException
Always throws a CanonicalizationException because this is inclusive c14n.

Specified by:
engineCanonicalizeSubTree in class CanonicalizerSpi
Parameters:
rootNode -
inclusiveNamespaces -
propagateDefaultNamespace - If true the default namespace will be propagated to the c14n-ized root element
Returns:
none it always fails
Throws:
CanonicalizationException

handleAttributesSubtree

protected Iterator<Attr> handleAttributesSubtree(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 Iterator<Attr> handleAttributes(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,
                                     ParserConfigurationException,
                                     IOException,
                                     SAXException
Throws:
CanonicalizationException
ParserConfigurationException
IOException
SAXException

handleParent

protected void handleParent(Element e,
                            NameSpaceSymbTable ns)
Overrides:
handleParent in class CanonicalizerBase


Copyright © 2000–2014 The Apache Software Foundation. All rights reserved.