Module  java.xml.crypto

Interface RetrievalMethod

  • All Superinterfaces:
    URIReferenceXMLStructure


    public interface RetrievalMethod
    extends URIReference, XMLStructure
    RetrievalMethod中定义的XML RetrievalMethod元素的表示 一个RetrievalMethod对象用于传递存储在另一个位置的KeyInfo信息的引用。 XML模式定义定义为:
      <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> 
    可以通过调用KeyInfoFactory类的newRetrievalMethod方法之一来创建一个RetrievalMethod实例,并传递它标识KeyInfo的位置的URI,一个标识KeyInfo类型的可选类型URI,以及Transform的可选列表; 例如:
      KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM");
       RetrievalMethod rm = factory.newRetrievalMethod
          ("#KeyValue-1", KeyValue.DSA_TYPE, Collections.singletonList(Transform.BASE64)); 
    从以下版本开始:
    1.6
    另请参见:
    KeyInfoFactory.newRetrievalMethod(String)KeyInfoFactory.newRetrievalMethod(String, String, List)
    • 方法详细信息

      • getTransforms

        List<Transform> getTransforms​()
        返回此RetrievalMethodTransformRetrievalMethod
        结果
        一个不可修改的 Transform对象的列表(可能是空的,但从不是 null )。
      • getURI

        String getURI​()
        返回引用的 KeyInfo信息的URI。
        Specified by:
        getURI在接口 URIReference
        结果
        RFC 2396格式的引用的 KeyInfo信息的URI(从不 null
      • dereference

        Data dereference​(XMLCryptoContext context)
                  throws URIReferenceException
        KeyInfoRetrievalMethod引用的 KeyInfo信息,并应用指定的 Transform s。
        参数
        context - 可能包含用于取消引用URI的其他有用信息的XMLCryptoContext 上下文的baseURIdereferencer参数(如果指定)用于解析和取消引用此RetrievalMethod
        结果
        一个Data对象表示的原始内容KeyInfo由该参考信息RetrievalMethod 调用者有责任将返回的数据转换为适当的KeyInfo对象。
        异常
        NullPointerException - 如果 contextnull
        URIReferenceException - 如果在取消引用时出现错误