Class XMLSignatureInput

java.lang.Object
org.apache.xml.security.signature.XMLSignatureInput

public class XMLSignatureInput extends Object
Class XMLSignatureInput $todo$ check whether an XMLSignatureInput can be _both_, octet stream _and_ node set?
  • Field Details

    • inputOctetStreamProxy

      private InputStream inputOctetStreamProxy
      Some InputStreams do not support the InputStream.reset() method, so we read it in completely and work on our Proxy.
    • inputNodeSet

      private Set<Node> inputNodeSet
      The original NodeSet for this XMLSignatureInput
    • subNode

      private Node subNode
      The original Element
    • excludeNode

      private Node excludeNode
      Exclude Node *for enveloped transformations*
    • excludeComments

      private boolean excludeComments
    • isNodeSet

      private boolean isNodeSet
    • bytes

      private byte[] bytes
      A cached bytes
    • secureValidation

      private boolean secureValidation
    • mimeType

      private String mimeType
      Some Transforms may require explicit MIME type, charset (IANA registered "character set"), or other such information concerning the data they are receiving from an earlier Transform or the source data, although no Transform algorithm specified in this document needs such explicit information. Such data characteristics are provided as parameters to the Transform algorithm and should be described in the specification for the algorithm.
    • sourceURI

      private String sourceURI
      Field sourceURI
    • nodeFilters

      private List<NodeFilter> nodeFilters
      Node Filter list.
    • needsToBeExpanded

      private boolean needsToBeExpanded
    • outputStream

      private OutputStream outputStream
    • preCalculatedDigest

      private String preCalculatedDigest
      Pre-calculated digest value of the object in base64.
  • Constructor Details

    • XMLSignatureInput

      public XMLSignatureInput(byte[] inputOctets)
      Construct a XMLSignatureInput from an octet array.

      This is a comfort method, which internally converts the byte[] array into an InputStream

      NOTE: no defensive copy

      Parameters:
      inputOctets - an octet array which including XML document or node
    • XMLSignatureInput

      public XMLSignatureInput(InputStream inputOctetStream)
      Constructs a XMLSignatureInput from an octet stream. The stream is directly read.
      Parameters:
      inputOctetStream -
    • XMLSignatureInput

      public XMLSignatureInput(Node rootNode)
      Construct a XMLSignatureInput from a subtree rooted by rootNode. This method included the node and all his descendants in the output.
      Parameters:
      rootNode -
    • XMLSignatureInput

      public XMLSignatureInput(Set<Node> inputNodeSet)
      Constructor XMLSignatureInput
      Parameters:
      inputNodeSet -
    • XMLSignatureInput

      public XMLSignatureInput(String preCalculatedDigest)
      Construct a XMLSignatureInput from a known digest value in Base64. This makes it possible to compare the element digest with the provided digest value.
      Parameters:
      preCalculatedDigest - digest value in base64.
  • Method Details

    • isNeedsToBeExpanded

      public boolean isNeedsToBeExpanded()
      Check if the structure needs to be expanded.
      Returns:
      true if so.
    • setNeedsToBeExpanded

      public void setNeedsToBeExpanded(boolean needsToBeExpanded)
      Set if the structure needs to be expanded.
      Parameters:
      needsToBeExpanded - true if so.
    • getNodeSet

      Returns the node set from input which was specified as the parameter of XMLSignatureInput constructor
      Returns:
      the node set
      Throws:
      SAXException
      IOException
      ParserConfigurationException
      CanonicalizationException
    • getInputNodeSet

      public Set<Node> getInputNodeSet()
      Get the Input NodeSet.
      Returns:
      the Input NodeSet.
    • getNodeSet

      public Set<Node> getNodeSet(boolean circumvent) throws ParserConfigurationException, IOException, SAXException, CanonicalizationException
      Returns the node set from input which was specified as the parameter of XMLSignatureInput constructor
      Parameters:
      circumvent -
      Returns:
      the node set
      Throws:
      SAXException
      IOException
      ParserConfigurationException
      CanonicalizationException
    • getOctetStream

      public InputStream getOctetStream() throws IOException
      Returns the Octet stream(byte Stream) from input which was specified as the parameter of XMLSignatureInput constructor
      Returns:
      the Octet stream(byte Stream) from input which was specified as the parameter of XMLSignatureInput constructor
      Throws:
      IOException
    • getOctetStreamReal

      public InputStream getOctetStreamReal()
      Returns:
      real octet stream
    • getBytes

      public byte[] getBytes() throws IOException, CanonicalizationException
      Returns the byte array from input which was specified as the parameter of XMLSignatureInput constructor
      Returns:
      the byte[] from input which was specified as the parameter of XMLSignatureInput constructor
      Throws:
      CanonicalizationException
      IOException
    • isNodeSet

      public boolean isNodeSet()
      Determines if the object has been set up with a Node set
      Returns:
      true if the object has been set up with a Node set
    • isElement

      public boolean isElement()
      Determines if the object has been set up with an Element
      Returns:
      true if the object has been set up with an Element
    • isOctetStream

      public boolean isOctetStream()
      Determines if the object has been set up with an octet stream
      Returns:
      true if the object has been set up with an octet stream
    • isOutputStreamSet

      public boolean isOutputStreamSet()
      Determines if setOutputStream(OutputStream) has been called with a non-null OutputStream.
      Returns:
      true if setOutputStream(OutputStream) has been called with a non-null OutputStream
    • isByteArray

      public boolean isByteArray()
      Determines if the object has been set up with a ByteArray
      Returns:
      true is the object has been set up with an octet stream
    • isPreCalculatedDigest

      public boolean isPreCalculatedDigest()
      Determines if the object has been set up with a pre-calculated digest.
      Returns:
    • isInitialized

      public boolean isInitialized()
      Is the object correctly set up?
      Returns:
      true if the object has been set up correctly
    • getMIMEType

      public String getMIMEType()
      Returns mimeType
      Returns:
      mimeType
    • setMIMEType

      public void setMIMEType(String mimeType)
      Sets mimeType
      Parameters:
      mimeType -
    • getSourceURI

      public String getSourceURI()
      Return SourceURI
      Returns:
      SourceURI
    • setSourceURI

      public void setSourceURI(String sourceURI)
      Sets SourceURI
      Parameters:
      sourceURI -
    • toString

      public String toString()
      Method toString
      Overrides:
      toString in class Object
    • getHTMLRepresentation

      public String getHTMLRepresentation() throws XMLSignatureException
      Method getHTMLRepresentation
      Returns:
      The HTML representation for this XMLSignature
      Throws:
      XMLSignatureException
    • getHTMLRepresentation

      public String getHTMLRepresentation(Set<String> inclusiveNamespaces) throws XMLSignatureException
      Method getHTMLRepresentation
      Parameters:
      inclusiveNamespaces -
      Returns:
      The HTML representation for this XMLSignature
      Throws:
      XMLSignatureException
    • getExcludeNode

      public Node getExcludeNode()
      Gets the exclude node of this XMLSignatureInput
      Returns:
      Returns the excludeNode.
    • setExcludeNode

      public void setExcludeNode(Node excludeNode)
      Sets the exclude node of this XMLSignatureInput
      Parameters:
      excludeNode - The excludeNode to set.
    • getSubNode

      public Node getSubNode()
      Gets the node of this XMLSignatureInput
      Returns:
      The excludeNode set.
    • isExcludeComments

      public boolean isExcludeComments()
      Returns:
      Returns the excludeComments.
    • setExcludeComments

      public void setExcludeComments(boolean excludeComments)
      Parameters:
      excludeComments - The excludeComments to set.
    • updateOutputStream

      public void updateOutputStream(OutputStream diOs) throws CanonicalizationException, IOException
      Parameters:
      diOs -
      Throws:
      IOException
      CanonicalizationException
    • updateOutputStream

      public void updateOutputStream(OutputStream diOs, boolean c14n11) throws CanonicalizationException, IOException
      Throws:
      CanonicalizationException
      IOException
    • setOutputStream

      public void setOutputStream(OutputStream os)
      Parameters:
      os -
    • getBytesFromInputStream

      private byte[] getBytesFromInputStream() throws IOException
      Throws:
      IOException
    • addNodeFilter

      public void addNodeFilter(NodeFilter filter)
      Parameters:
      filter -
    • getNodeFilters

      public List<NodeFilter> getNodeFilters()
      Returns:
      the node filters
    • setNodeSet

      public void setNodeSet(boolean b)
      Parameters:
      b -
    • convertToNodes

    • isSecureValidation

      public boolean isSecureValidation()
    • setSecureValidation

      public void setSecureValidation(boolean secureValidation)
    • getPreCalculatedDigest

      public String getPreCalculatedDigest()