Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xml.security.c14n.implementations
Class CanonicalizerPhysical

    java.lang.Object
      org.apache.xml.security.c14n.CanonicalizerSpi
          org.apache.xml.security.c14n.implementations.CanonicalizerBase
              org.apache.xml.security.c14n.implementations.CanonicalizerPhysical

    public class CanonicalizerPhysical

extends CanonicalizerBase

Serializes the physical representation of the subtree. All the attributes present in the subtree are emitted. The attributes are sorted within an element, with the namespace declarations appearing before the regular attributes. This algorithm is not a true canonicalization since equivalent subtrees may produce different output. It is therefore unsuitable for digital signatures. This same property makes it ideal for XML Encryption Syntax and Processing, because the decrypted XML content will share the same physical representation as the original XML content that was encrypted.

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
`CanonicalizerPhysical()` Constructor Canonicalizer20010315

Method Summary
`protected void` | `circumventBugIfNeeded(XMLSignatureInput input)`
`byte[]` | `engineCanonicalizeSubTree(org.w3c.dom.Node rootNode, java.lang.String inclusiveNamespaces)` Always throws a CanonicalizationException.
`byte[]` | `engineCanonicalizeXPathNodeSet(java.util.Set<org.w3c.dom.Node> xpathNodeSet, java.lang.String inclusiveNamespaces)` Always throws a CanonicalizationException.
`boolean` | `engineGetIncludeComments()` Returns true if comments are included
`java.lang.String` | `engineGetURI()` Returns the URI of this engine.
`protected java.util.Iterator<org.w3c.dom.Attr>` | `handleAttributes(org.w3c.dom.Element element, NameSpaceSymbTable ns)` Returns the Attr[]s to be output for the given element.
`protected java.util.Iterator<org.w3c.dom.Attr>` | `handleAttributesSubtree(org.w3c.dom.Element element, NameSpaceSymbTable ns)` Returns the Attr[]s to be output for the given element.
`protected void` | `handleParent(org.w3c.dom.Element e, NameSpaceSymbTable ns)`
`protected void` | `outputCommentToWriter(org.w3c.dom.Comment currentComment, java.io.OutputStream writer, int position)` Method outputCommentToWriter
`protected void` | `outputPItoWriter(org.w3c.dom.ProcessingInstruction currentPI, java.io.OutputStream writer, int position)` Outputs a PI to the internal Writer.

Methods inherited from class org.apache.xml.security.c14n.implementations.CanonicalizerBase
`canonicalizeSubTree, canonicalizeXPathNodeSet, engineCanonicalize, engineCanonicalizeSubTree, engineCanonicalizeSubTree, engineCanonicalizeXPathNodeSet, getNullNode, getParentNameSpaces, isVisible, isVisibleDO, isVisibleInt, outputAttrToWriter, outputTextToWriter, setWriter`

Methods inherited from class org.apache.xml.security.c14n.CanonicalizerSpi
`engineCanonicalize, engineCanonicalizeXPathNodeSet, engineCanonicalizeXPathNodeSet, isSecureValidation, setSecureValidation`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CanonicalizerPhysical

    public CanonicalizerPhysical()

  Constructor Canonicalizer20010315

Method Detail

### engineCanonicalizeXPathNodeSet

    public byte[] engineCanonicalizeXPathNodeSet(java.util.Set<org.w3c.dom.Node> xpathNodeSet,
                                                 java.lang.String inclusiveNamespaces)
                                          throws CanonicalizationException

  Always throws a CanonicalizationException.

  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.

  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.

  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`

### engineGetURI

    public final java.lang.String engineGetURI()

  Description copied from class: `CanonicalizerSpi`
  Returns the URI of this engine.

  Specified by:
    `engineGetURI` in class `CanonicalizerSpi`
  Returns:
    the URI

### engineGetIncludeComments

    public final boolean engineGetIncludeComments()

  Description copied from class: `CanonicalizerSpi`
  Returns true if comments are included

  Specified by:
    `engineGetIncludeComments` in class `CanonicalizerSpi`
  Returns:
    true if comments are included

### outputPItoWriter

    protected void outputPItoWriter(org.w3c.dom.ProcessingInstruction currentPI,
                                    java.io.OutputStream writer,
                                    int position)
                             throws java.io.IOException

  Description copied from class: `CanonicalizerBase`
  Outputs a PI to the internal Writer.

  Overrides:
    `outputPItoWriter` in class `CanonicalizerBase`
    `writer` - where to write the things
  Throws:
    `java.io.IOException`

### outputCommentToWriter

    protected void outputCommentToWriter(org.w3c.dom.Comment currentComment,
                                         java.io.OutputStream writer,
                                         int position)
                                  throws java.io.IOException

  Description copied from class: `CanonicalizerBase`
  Method outputCommentToWriter

  Overrides:
    `outputCommentToWriter` in class `CanonicalizerBase`
    `writer` - writer where to write the things
  Throws:
    `java.io.IOException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD