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

## javax.xml.crypto.dsig.keyinfo
Interface RetrievalMethod

All Superinterfaces:
  URIReference, XMLStructure

    public interface RetrievalMethod

extends URIReference, XMLStructure

A representation of the XML `RetrievalMethod` element as defined in the W3C Recommendation for XML-Signature Syntax and Processing. A `RetrievalMethod` object is used to convey a reference to `KeyInfo` information that is stored at another location. The XML schema definition is defined as:

       <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
       <complexType name="RetrievalMethodType">
         <sequence>
           <element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
         </sequence>
         <attribute name="URI" type="anyURI"/>
         <attribute name="Type" type="anyURI" use="optional"/>
       </complexType>

A `RetrievalMethod` instance may be created by invoking one of the `newRetrievalMethod` methods of the `KeyInfoFactory` class, and passing it the URI identifying the location of the KeyInfo, an optional type URI identifying the type of KeyInfo, and an optional list of `Transform`s; for example:

       KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM");
       RetrievalMethod rm = factory.newRetrievalMethod
          ("#KeyValue-1", KeyValue.DSA_TYPE, Collections.singletonList(Transform.BASE64));

Author:
  Sean Mullan, JSR 105 Expert Group
See Also:
  `KeyInfoFactory.newRetrievalMethod(String)`, `KeyInfoFactory.newRetrievalMethod(String, String, List)`

Method Summary
`Data` | `dereference(XMLCryptoContext context)` Dereferences the `KeyInfo` information referenced by this `RetrievalMethod` and applies the specified `Transform`s.
`java.util.List` | `getTransforms()` Returns an `unmodifiable list` of `Transform`s of this `RetrievalMethod`.
`java.lang.String` | `getURI()` Returns the URI of the referenced `KeyInfo` information.

Methods inherited from interface javax.xml.crypto.URIReference
`getType`

Methods inherited from interface javax.xml.crypto.XMLStructure
`isFeatureSupported`

Method Detail

### getTransforms

    java.util.List getTransforms()

  Returns an `unmodifiable list` of `Transform`s of this `RetrievalMethod`.

  Returns:
    an unmodifiable list of `Transform` objects (may be empty but never `null`).

### getURI

    java.lang.String getURI()

  Returns the URI of the referenced `KeyInfo` information.

  Specified by:
    `getURI` in interface `URIReference`
  Returns:
    the URI of the referenced `KeyInfo` information in RFC 2396 format (never `null`)

### dereference

    Data dereference(XMLCryptoContext context)
                     throws URIReferenceException

  Dereferences the `KeyInfo` information referenced by this `RetrievalMethod` and applies the specified `Transform`s.

  Parameters:
    `context` - an `XMLCryptoContext` that may contain additional useful information for dereferencing the URI. The context's `baseURI` and `dereferencer` parameters (if specified) are used to resolve and dereference this `RetrievalMethod`
  Returns:
    a `Data` object representing the raw contents of the `KeyInfo` information referenced by this `RetrievalMethod`. It is the caller's responsibility to convert the returned data to an appropriate `KeyInfo` object.
  Throws:
    `java.lang.NullPointerException` - if `context` is `null`
    `URIReferenceException` - if there is an error while dereferencing

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