public interface

RetrievalMethod

implements URIReference XMLStructure
javax.xml.crypto.dsig.keyinfo.RetrievalMethod

Class Overview

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 Transforms; for example:
   KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM");
   RetrievalMethod rm = factory.newRetrievalMethod
      ("#KeyValue-1", KeyValue.DSA_TYPE, Collections.singletonList(Transform.BASE64));
 

Summary

Public Methods
abstract Data dereference(XMLCryptoContext context)
Dereferences the KeyInfo information referenced by this RetrievalMethod and applies the specified Transforms.
abstract List getTransforms()
Returns an unmodifiable list of Transforms of this RetrievalMethod.
abstract String getURI()
Returns the URI of the referenced KeyInfo information.
[Expand]
Inherited Methods
From interface javax.xml.crypto.URIReference
From interface javax.xml.crypto.XMLStructure

Public Methods

public abstract Data dereference (XMLCryptoContext context)

Dereferences the KeyInfo information referenced by this RetrievalMethod and applies the specified Transforms.

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
NullPointerException if context is null
URIReferenceException if there is an error while dereferencing

public abstract List getTransforms ()

Returns an unmodifiable list of Transforms of this RetrievalMethod.

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

public abstract String getURI ()

Returns the URI of the referenced KeyInfo information.

Returns
  • the URI of the referenced KeyInfo information in RFC 2396 format (never null)