- All Superinterfaces:
- XMLStructure
public interface KeyInfo extends XMLStructure
A representation of the XML 
KeyInfo element as defined in
 the 
 W3C Recommendation for XML-Signature Syntax and Processing.
 A KeyInfo contains a list of XMLStructures, each of
 which contain information that enables the recipient(s) to obtain the key
 needed to validate an XML signature. The XML Schema Definition is defined as:
 
 <element name="KeyInfo" type="ds:KeyInfoType"/>
 <complexType name="KeyInfoType" mixed="true">
   <choice maxOccurs="unbounded">
     <element ref="ds:KeyName"/>
     <element ref="ds:KeyValue"/>
     <element ref="ds:RetrievalMethod"/>
     <element ref="ds:X509Data"/>
     <element ref="ds:PGPData"/>
     <element ref="ds:SPKIData"/>
     <element ref="ds:MgmtData"/>
     <any processContents="lax" namespace="##other"/>
     <!-- (1,1) elements from (0,unbounded) namespaces -->
   </choice>
   <attribute name="Id" type="ID" use="optional"/>
 </complexType>
 
 A KeyInfo instance may be created by invoking one of the
 newKeyInfo methods of the
 KeyInfoFactory class, and passing it a list of one or more
 XMLStructures and an optional id parameter;
 for example:
 
   KeyInfoFactory factory = KeyInfoFactory.getInstance("DOM");
   KeyInfo keyInfo = factory.newKeyInfo
      (Collections.singletonList(factory.newKeyName("Alice"), "keyinfo-1"));
 
 KeyInfo objects can also be marshalled to XML by invoking
 the marshal method.
- Since:
- 1.6
- See Also:
- KeyInfoFactory.newKeyInfo(List),- KeyInfoFactory.newKeyInfo(List, String)
- 
Method SummaryModifier and Type Method Description List<XMLStructure>getContent()Returns anunmodifiable listcontaining the key information.StringgetId()Return the optional Id attribute of thisKeyInfo, which may be useful for referencing thisKeyInfofrom other XML structures.voidmarshal(XMLStructure parent, XMLCryptoContext context)Marshals the key info to XML.
- 
Method Details- 
getContentList<XMLStructure> getContent()Returns anunmodifiable listcontaining the key information. Each entry of the list is anXMLStructure.If there is a public subclass representing the type of XMLStructure, it is returned as an instance of that class (ex: anX509Dataelement would be returned as an instance ofX509Data).- Returns:
- an unmodifiable list of one or more XMLStructures in thisKeyInfo. Never returnsnullor an empty list.
 
- 
getIdString getId()Return the optional Id attribute of thisKeyInfo, which may be useful for referencing thisKeyInfofrom other XML structures.- Returns:
- the Id attribute of this KeyInfo(may benullif not specified)
 
- 
marshalMarshals the key info to XML.- Parameters:
- parent- a mechanism-specific structure containing the parent node that the marshalled key info will be appended to
- context- the- XMLCryptoContextcontaining additional context (may be null if not applicable)
- Throws:
- ClassCastException- if the type of- parentor- contextis not compatible with this key info
- MarshalException- if the key info cannot be marshalled
- NullPointerException- if- parentis- null
 
 
-