DOMValidateContext (Java SE 15 & JDK 15)
Description: declaration: module: java.xml.crypto, package: javax.xml.crypto.dsig.dom, class: DOMValidateContext
Keywords: javax.xml.crypto.dsig.dom.DOMValidateContext class

Module java.xml.crypto
Package javax.xml.crypto.dsig.dom

# Class DOMValidateContext

java.lang.Object
javax.xml.crypto.dom.DOMCryptoContext
javax.xml.crypto.dsig.dom.DOMValidateContext

All Implemented Interfaces:
  `XMLValidateContext`, `XMLCryptoContext`

    public class DOMValidateContext
    extends DOMCryptoContext
    implements XMLValidateContext

A DOM-specific `XMLValidateContext`. This class contains additional methods to specify the location in a DOM tree where an `XMLSignature` is to be unmarshalled and validated from.

Note that the behavior of an unmarshalled `XMLSignature` is undefined if the contents of the underlying DOM tree are modified by the caller after the `XMLSignature` is created.

Also, note that `DOMValidateContext` instances can contain information and state specific to the XML signature structure it is used with. The results are unpredictable if a `DOMValidateContext` is used with different signature structures (for example, you should not use the same `DOMValidateContext` instance to validate two different `XMLSignature` objects).

Since:
  1.6
See Also:
  `XMLSignatureFactory.unmarshalXMLSignature(XMLValidateContext)`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `DOMValidateContext​(Key validatingKey, Node node)` | Creates a `DOMValidateContext` containing the specified key and node.
  `DOMValidateContext​(KeySelector ks, Node node)` | Creates a `DOMValidateContext` containing the specified key selector and node.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `Node` | `getNode()` | Returns the node.
  `void` | `setNode​(Node node)` | Sets the node.

  ### Methods declared in class javax.xml.crypto.dom.DOMCryptoContext

  `get, getElementById, getNamespacePrefix, getProperty, iterator, put, putNamespacePrefix, setBaseURI, setIdAttributeNS, setProperty`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods declared in interface javax.xml.crypto.XMLCryptoContext

  `get, getBaseURI, getDefaultNamespacePrefix, getKeySelector, getNamespacePrefix, getProperty, getURIDereferencer, put, putNamespacePrefix, setBaseURI, setDefaultNamespacePrefix, setKeySelector, setProperty, setURIDereferencer`

- ## Constructor Details

  - ### DOMValidateContext

    public DOMValidateContext​(KeySelector ks, Node node)
    Creates a `DOMValidateContext` containing the specified key selector and node.
    Parameters:
      `ks` - a key selector for finding a validation key
      `node` - the node
    Throws:
      `NullPointerException` - if `ks` or `node` is `null`

  - ### DOMValidateContext

    public DOMValidateContext​(Key validatingKey, Node node)
    Creates a `DOMValidateContext` containing the specified key and node. The validating key will be stored in a `singleton KeySelector` that is returned when the `getKeySelector` method is called.
    Parameters:
      `validatingKey` - the validating key
      `node` - the node
    Throws:
      `NullPointerException` - if `validatingKey` or `node` is `null`

- ## Method Details

  - ### setNode

    public void setNode​(Node node)
    Sets the node.
    Parameters:
      `node` - the node
    Throws:
      `NullPointerException` - if `node` is `null`
    See Also:
      `getNode()`

  - ### getNode

    public Node getNode()
    Returns the node.
    Returns:
      the node (never `null`)
    See Also:
      `setNode(Node)`