# Interface XMLSignContext

All Superinterfaces:
  `XMLCryptoContext`

All Known Implementing Classes:
  `DOMSignContext`

public interface XMLSignContext extends XMLCryptoContext
Contains context information for generating XML Signatures. This interface is primarily intended for type-safety.

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

Supported Properties

The following properties can be set using the `setProperty` method.

- `javax.xml.crypto.dsig.cacheReference`: value must be a `Boolean`. This property controls whether or not the digested `Reference` objects will cache the dereferenced content and pre-digested input for subsequent retrieval via the `Reference.getDereferencedData` and `Reference.getDigestInputStream` methods. The default value if not specified is `Boolean.FALSE`.

Since:
  1.6
See Also:
  - `XMLSignature.sign(XMLSignContext)`

## Method Summary

### Methods declared in interface XMLCryptoContext

`get, getBaseURI, getDefaultNamespacePrefix, getKeySelector, getNamespacePrefix, getProperty, getURIDereferencer, put, putNamespacePrefix, setBaseURI, setDefaultNamespacePrefix, setKeySelector, setProperty, setURIDereferencer`
Modifier and Type
Method
Description
`Object`
`get(Object key)`
Returns the value to which this context maps the specified key.
`String`
`getBaseURI()`
Returns the base URI.
`String`
`getDefaultNamespacePrefix()`
Returns the default namespace prefix.
`KeySelector`
`getKeySelector()`
Returns the key selector for finding a key.
`String`
`getNamespacePrefix(String namespaceURI, String defaultPrefix)`
Returns the namespace prefix that the specified namespace URI is associated with.
`Object`
`getProperty(String name)`
Returns the value of the specified property.
`URIDereferencer`
`getURIDereferencer()`
Returns a `URIDereferencer` that is used to dereference `URIReference`s.
`Object`
`put(Object key, Object value)`
Associates the specified value with the specified key in this context.
`String`
`putNamespacePrefix(String namespaceURI, String prefix)`
Maps the specified namespace URI to the specified prefix.
`void`
`setBaseURI(String baseURI)`
Sets the base URI.
`void`
`setDefaultNamespacePrefix(String defaultPrefix)`
Sets the default namespace prefix.
`void`
`setKeySelector(KeySelector ks)`
Sets the key selector for finding a key.
`Object`
`setProperty(String name, Object value)`
Sets the specified property.
`void`
`setURIDereferencer(URIDereferencer dereferencer)`
Sets a `URIDereferencer` that is used to dereference `URIReference`s.