- java.lang.Object
-
- org.apache.xml.security.utils.ElementProxy
-
- org.apache.xml.security.utils.SignatureElementProxy
-
- org.apache.xml.security.signature.Manifest
-
- Direct Known Subclasses:
SignedInfo
public class Manifest extends SignatureElementProxy
Handles<ds:Manifest>elements.This element holds the
Referenceelements
-
-
Field Summary
Fields Modifier and Type Field Description static intMAXIMUM_REFERENCE_COUNTThe default maximum number of references per Manifest, if secure validation is enabled.-
Fields inherited from class org.apache.xml.security.utils.ElementProxy
baseURI
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddDocument(String baseURI, String referenceURI, Transforms transforms, String digestURI, String referenceId, String referenceType)ThisaddDocumentmethod is used to add a new resource to the signed info.voidaddResourceResolver(ResourceResolverSpi resolver)Adds Resource Resolver for retrieving resources at specifiedURIattribute inreferenceelementvoidgenerateDigestValues()The calculation of the DigestValues in the References must be after the References are already added to the document and during the signing process.StringgetBaseLocalName()Method getBaseLocalName Returns the localname of the Elements of the sub-class.StringgetId()Returns theIdattributeintgetLength()Return the nonnegative number of added references.List<ResourceResolverSpi>getPerManifestResolvers()Get the Per-Manifest Resolver ListXMLSignatureInputgetReferencedContentAfterTransformsItem(int i)Method getReferencedContentAfterTransformsItemXMLSignatureInputgetReferencedContentBeforeTransformsItem(int i)Method getReferencedContentPriorTransformsItemMap<String,String>getResolverProperties()Get the resolver property mapStringgetResolverProperty(String key)Returns the value at specified keybyte[]getSignedContentItem(int i)Method getSignedContentItemintgetSignedContentLength()Method getSignedContentLengthbooleangetVerificationResult(int index)After verifying aManifestor aSignedInfousing theverifyReferences()orSignedInfo.verify()methods, the individual results can be retrieved with this method.List<VerifiedReference>getVerificationResults()Get the list of verification result objectsbooleanisSecureValidation()Referenceitem(int i)Return the ith reference.voidsetId(String Id)Sets theIdattributevoidsetResolverProperty(String key, String value)Used to pass parameters like proxy servers etc to the ResourceResolver implementation.booleanverifyReferences()Used to do a reference validation of all enclosed references using theReference.verify()method.booleanverifyReferences(boolean followManifests)Used to do a reference validation of all enclosed references using theReference.verify()method.-
Methods inherited from class org.apache.xml.security.utils.SignatureElementProxy
getBaseNamespace
-
Methods inherited from class org.apache.xml.security.utils.ElementProxy
addBase64Element, addBase64Text, addBigIntegerElement, addReturnToSelf, addText, addTextElement, appendOther, appendSelf, appendSelf, createElementForFamily, createElementForFamilyLocal, createText, getBaseURI, getBigIntegerFromChildElement, getBytesFromTextChild, getDefaultPrefix, getDocument, getElement, getElementPlusReturns, getFirstChild, getLocalAttribute, getTextFromChildElement, getTextFromTextChild, length, registerDefaultPrefixes, setDefaultPrefix, setDocument, setElement, setElement, setLocalAttribute, setLocalIdAttribute, setXPathNamespaceContext
-
-
-
-
Field Detail
-
MAXIMUM_REFERENCE_COUNT
public static final int MAXIMUM_REFERENCE_COUNT
The default maximum number of references per Manifest, if secure validation is enabled.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Manifest
public Manifest(Document doc)
ConstructsManifest- Parameters:
doc- theDocumentin whichXMLsignatureis placed
-
Manifest
public Manifest(Element element, String baseURI) throws XMLSecurityException
Constructor Manifest- Parameters:
element-baseURI-- Throws:
XMLSecurityException
-
Manifest
public Manifest(Element element, String baseURI, boolean secureValidation) throws XMLSecurityException
Constructor Manifest- Parameters:
element-baseURI-secureValidation-- Throws:
XMLSecurityException
-
-
Method Detail
-
addDocument
public void addDocument(String baseURI, String referenceURI, Transforms transforms, String digestURI, String referenceId, String referenceType) throws XMLSignatureException
ThisaddDocumentmethod is used to add a new resource to the signed info. AReferenceis built from the supplied values.- Parameters:
baseURI- the URI of the resource where the XML instance was storedreferenceURI-URIattribute inReferencefor specifying where data istransforms- org.apache.xml.security.signature.Transforms object with an ordered list of transformations to be performed.digestURI- The digest algorithm URI to be used.referenceId-referenceType-- Throws:
XMLSignatureException
-
generateDigestValues
public void generateDigestValues() throws XMLSignatureException, ReferenceNotInitializedExceptionThe calculation of the DigestValues in the References must be after the References are already added to the document and during the signing process. This ensures that all necessary data is in place.
-
getLength
public int getLength()
Return the nonnegative number of added references.- Returns:
- the number of references
-
item
public Reference item(int i) throws XMLSecurityException
Return the ith reference. Validivalues are 0 to{link@ getSize}-1.- Parameters:
i- Index of the requestedReference- Returns:
- the ith reference
- Throws:
XMLSecurityException
-
setId
public void setId(String Id)
Sets theIdattribute- Parameters:
Id- theIdattribute inds:Manifest
-
getId
public String getId()
Returns theIdattribute- Returns:
- the
Idattribute inds:Manifest
-
verifyReferences
public boolean verifyReferences() throws MissingResourceFailureException, XMLSecurityExceptionUsed to do a reference validation of all enclosed references using theReference.verify()method.This step loops through all
References and does verify the hash values. If one or more verifications fail, the method returnsfalse. If all verifications are successful, it returnstrue. The results of the individual reference validations are available by using thegetVerificationResult(int)method- Returns:
- true if all References verify, false if one or more do not verify.
- Throws:
MissingResourceFailureException- if aReferencedoes not verify (throws aReferenceNotInitializedExceptionbecause of an uninitializedXMLSignatureInputXMLSecurityException- See Also:
Reference.verify(),SignedInfo.verify(),MissingResourceFailureException
-
verifyReferences
public boolean verifyReferences(boolean followManifests) throws MissingResourceFailureException, XMLSecurityExceptionUsed to do a reference validation of all enclosed references using theReference.verify()method.This step loops through all
References and does verify the hash values. If one or more verifications fail, the method returnsfalse. If all verifications are successful, it returnstrue. The results of the individual reference validations are available by using thegetVerificationResult(int)method- Parameters:
followManifests-- Returns:
- true if all References verify, false if one or more do not verify.
- Throws:
MissingResourceFailureException- if aReferencedoes not verify (throws aReferenceNotInitializedExceptionbecause of an uninitializedXMLSignatureInputXMLSecurityException- See Also:
Reference.verify(),SignedInfo.verify(boolean),MissingResourceFailureException
-
getVerificationResult
public boolean getVerificationResult(int index) throws XMLSecurityExceptionAfter verifying aManifestor aSignedInfousing theverifyReferences()orSignedInfo.verify()methods, the individual results can be retrieved with this method.- Parameters:
index- an index of into aManifestor aSignedInfo- Returns:
- the results of reference validation at the specified index
- Throws:
XMLSecurityException
-
getVerificationResults
public List<VerifiedReference> getVerificationResults()
Get the list of verification result objects
-
addResourceResolver
public void addResourceResolver(ResourceResolverSpi resolver)
Adds Resource Resolver for retrieving resources at specifiedURIattribute inreferenceelement- Parameters:
resolver-ResourceResolverSpican provide the implementation subclass ofResourceResolverSpifor retrieving resource.
-
getPerManifestResolvers
public List<ResourceResolverSpi> getPerManifestResolvers()
Get the Per-Manifest Resolver List- Returns:
- the per-manifest Resolver List
-
getResolverProperties
public Map<String,String> getResolverProperties()
Get the resolver property map- Returns:
- the resolver property map
-
setResolverProperty
public void setResolverProperty(String key, String value)
Used to pass parameters like proxy servers etc to the ResourceResolver implementation.- Parameters:
key- the keyvalue- the value
-
getResolverProperty
public String getResolverProperty(String key)
Returns the value at specified key- Parameters:
key- the key- Returns:
- the value
-
getSignedContentItem
public byte[] getSignedContentItem(int i) throws XMLSignatureExceptionMethod getSignedContentItem- Parameters:
i-- Returns:
- The signed content of the i reference.
- Throws:
XMLSignatureException
-
getReferencedContentBeforeTransformsItem
public XMLSignatureInput getReferencedContentBeforeTransformsItem(int i) throws XMLSecurityException
Method getReferencedContentPriorTransformsItem- Parameters:
i-- Returns:
- The contents before transformation of the reference i.
- Throws:
XMLSecurityException
-
getReferencedContentAfterTransformsItem
public XMLSignatureInput getReferencedContentAfterTransformsItem(int i) throws XMLSecurityException
Method getReferencedContentAfterTransformsItem- Parameters:
i-- Returns:
- The contents after transformation of the reference i.
- Throws:
XMLSecurityException
-
getSignedContentLength
public int getSignedContentLength()
Method getSignedContentLength- Returns:
- The number of references contained in this reference.
-
getBaseLocalName
public String getBaseLocalName()
Method getBaseLocalName Returns the localname of the Elements of the sub-class.- Specified by:
getBaseLocalNamein classElementProxy- Returns:
- the localname of the Elements of the sub-class.
-
isSecureValidation
public boolean isSecureValidation()
-
-