compact3
javax.xml.crypto.dsig.dom

## Class DOMSignContext

- java.lang.Object
- - javax.xml.crypto.dom.DOMCryptoContext
  - - javax.xml.crypto.dsig.dom.DOMSignContext

All Implemented Interfaces:
  XMLSignContext, XMLCryptoContext

    public class DOMSignContext
    extends DOMCryptoContext
    implements XMLSignContext

A DOM-specific `XMLSignContext`. This class contains additional methods to specify the location in a DOM tree where an `XMLSignature` object is to be marshalled when generating the signature.

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

Since:
  1.6

### Constructor Summary

Constructors
Constructor and Description
`DOMSignContext(Key signingKey, Node parent)` Creates a `DOMSignContext` with the specified signing key and parent node.
`DOMSignContext(Key signingKey, Node parent, Node nextSibling)` Creates a `DOMSignContext` with the specified signing key, parent and next sibling nodes.
`DOMSignContext(KeySelector ks, Node parent)` Creates a `DOMSignContext` with the specified key selector and parent node.
`DOMSignContext(KeySelector ks, Node parent, Node nextSibling)` Creates a `DOMSignContext` with the specified key selector, parent and next sibling nodes.

### Method Summary

All Methods Instance Methods Concrete Methods
`Node` `getNextSibling()` Returns the nextSibling node.
`Node` `getParent()` Returns the parent node.
`void` `setNextSibling(Node nextSibling)` Sets the next sibling node.
`void` `setParent(Node parent)` Sets the parent node.

### Methods inherited from class javax.xml.crypto.dom.DOMCryptoContext

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

### Methods inherited from class java.lang.Object

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

### Methods inherited from interface javax.xml.crypto.XMLCryptoContext

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

### Constructor Detail

#### DOMSignContext

    public DOMSignContext(Key signingKey,
                          Node parent)

Creates a `DOMSignContext` with the specified signing key and parent node. The signing key is stored in a `singleton KeySelector` that is returned by the `getKeySelector` method. The marshalled `XMLSignature` will be added as the last child element of the specified parent node unless a next sibling node is specified by invoking the `setNextSibling` method.

Parameters:
  `signingKey` - the signing key
  `parent` - the parent node
Throws:
  `NullPointerException` - if `signingKey` or `parent` is `null`

#### DOMSignContext

    public DOMSignContext(Key signingKey,
                          Node parent,
                          Node nextSibling)

Creates a `DOMSignContext` with the specified signing key, parent and next sibling nodes. The signing key is stored in a `singleton KeySelector` that is returned by the `getKeySelector` method. The marshalled `XMLSignature` will be inserted as a child element of the specified parent node and immediately before the specified next sibling node.

Parameters:
  `signingKey` - the signing key
  `parent` - the parent node
  `nextSibling` - the next sibling node
Throws:
  `NullPointerException` - if `signingKey`, `parent` or `nextSibling` is `null`

#### DOMSignContext

    public DOMSignContext(KeySelector ks,
                          Node parent)

Creates a `DOMSignContext` with the specified key selector and parent node. The marshalled `XMLSignature` will be added as the last child element of the specified parent node unless a next sibling node is specified by invoking the `setNextSibling` method.

Parameters:
  `ks` - the key selector
  `parent` - the parent node
Throws:
  `NullPointerException` - if `ks` or `parent` is `null`

#### DOMSignContext

    public DOMSignContext(KeySelector ks,
                          Node parent,
                          Node nextSibling)

Creates a `DOMSignContext` with the specified key selector, parent and next sibling nodes. The marshalled `XMLSignature` will be inserted as a child element of the specified parent node and immediately before the specified next sibling node.

Parameters:
  `ks` - the key selector
  `parent` - the parent node
  `nextSibling` - the next sibling node
Throws:
  `NullPointerException` - if `ks`, `parent` or `nextSibling` is `null`

### Method Detail

#### setParent

    public void setParent(Node parent)

Sets the parent node.

Parameters:
  `parent` - the parent node. The marshalled `XMLSignature` will be added as a child element of this node.
Throws:
  `NullPointerException` - if `parent` is `null`
See Also:
  `getParent()`

#### setNextSibling

    public void setNextSibling(Node nextSibling)

Sets the next sibling node.

Parameters:
  `nextSibling` - the next sibling node. The marshalled `XMLSignature` will be inserted immediately before this node. Specify `null` to remove the current setting.
See Also:
  `getNextSibling()`

#### getParent

    public Node getParent()

Returns the parent node.

Returns:
  the parent node (never `null`)
See Also:
  `setParent(Node)`

#### getNextSibling

    public Node getNextSibling()

Returns the nextSibling node.

Returns:
  the nextSibling node, or `null` if not specified.
See Also:
  `setNextSibling(Node)`