org.apache.xml.security.stax.impl.processor.input
Class AbstractSignatureReferenceVerifyInputProcessor

java.lang.Object
  extended by org.apache.xml.security.stax.ext.AbstractInputProcessor
      extended by org.apache.xml.security.stax.impl.processor.input.AbstractSignatureReferenceVerifyInputProcessor
All Implemented Interfaces:
InputProcessor
Direct Known Subclasses:
XMLSignatureReferenceVerifyInputProcessor

public abstract class AbstractSignatureReferenceVerifyInputProcessor
extends AbstractInputProcessor

Version:
$Revision: 1557759 $ $Date: 2014-01-13 16:06:32 +0000 (Mon, 13 Jan 2014) $
Author:
$Author: coheigea $

Nested Class Summary
 class AbstractSignatureReferenceVerifyInputProcessor.InternalSignatureReferenceVerifier
           
 
Field Summary
protected static Boolean allowNotSameDocumentReferences
           
protected static Boolean doNotThrowExceptionForManifests
           
protected static Integer maximumAllowedReferencesPerManifest
           
protected static Integer maximumAllowedTransformsPerReference
           
 
Constructor Summary
AbstractSignatureReferenceVerifyInputProcessor(InputProcessorChain inputProcessorChain, org.apache.xml.security.binding.xmldsig.SignatureType signatureType, InboundSecurityToken inboundSecurityToken, XMLSecurityProperties securityProperties)
           
 
Method Summary
protected  Transformer buildTransformerChain(org.apache.xml.security.binding.xmldsig.ReferenceType referenceType, OutputStream outputStream, InputProcessorChain inputProcessorChain, AbstractSignatureReferenceVerifyInputProcessor.InternalSignatureReferenceVerifier internalSignatureReferenceVerifier)
           
protected  void compareDigest(byte[] calculatedDigest, org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
           
protected  DigestOutputStream createMessageDigestOutputStream(org.apache.xml.security.binding.xmldsig.ReferenceType referenceType, InboundSecurityContext inboundSecurityContext)
           
 void doFinal(InputProcessorChain inputProcessorChain)
          Will be called when the whole document is processed.
 InboundSecurityToken getInboundSecurityToken()
           
 List<org.apache.xml.security.binding.xmldsig.ReferenceType> getProcessedReferences()
           
protected  AbstractSignatureReferenceVerifyInputProcessor.InternalSignatureReferenceVerifier getSignatureReferenceVerifier(XMLSecurityProperties securityProperties, InputProcessorChain inputProcessorChain, org.apache.xml.security.binding.xmldsig.ReferenceType referenceType, XMLSecStartElement startElement)
           
 org.apache.xml.security.binding.xmldsig.SignatureType getSignatureType()
           
protected abstract  void processElementPath(List<QName> elementPath, InputProcessorChain inputProcessorChain, XMLSecEvent xmlSecEvent, org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
           
 XMLSecEvent processNextEvent(InputProcessorChain inputProcessorChain)
          Will be called from the framework when the next XMLEvent is requested
 XMLSecEvent processNextHeaderEvent(InputProcessorChain inputProcessorChain)
          Will be called from the framework when the next security-header XMLEvent is requested
protected  List<org.apache.xml.security.binding.xmldsig.ReferenceType> resolvesResource(XMLSecStartElement xmlSecStartElement)
           
protected  void verifyExternalReference(InputProcessorChain inputProcessorChain, InputStream inputStream, org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
           
 
Methods inherited from class org.apache.xml.security.stax.ext.AbstractInputProcessor
addAfterProcessor, addBeforeProcessor, getAfterProcessors, getBeforeProcessors, getPhase, getReferenceIDAttribute, getSecurityProperties, setPhase
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

maximumAllowedReferencesPerManifest

protected static final Integer maximumAllowedReferencesPerManifest

maximumAllowedTransformsPerReference

protected static final Integer maximumAllowedTransformsPerReference

doNotThrowExceptionForManifests

protected static final Boolean doNotThrowExceptionForManifests

allowNotSameDocumentReferences

protected static final Boolean allowNotSameDocumentReferences
Constructor Detail

AbstractSignatureReferenceVerifyInputProcessor

public AbstractSignatureReferenceVerifyInputProcessor(InputProcessorChain inputProcessorChain,
                                                      org.apache.xml.security.binding.xmldsig.SignatureType signatureType,
                                                      InboundSecurityToken inboundSecurityToken,
                                                      XMLSecurityProperties securityProperties)
                                               throws XMLSecurityException
Throws:
XMLSecurityException
Method Detail

getSignatureType

public org.apache.xml.security.binding.xmldsig.SignatureType getSignatureType()

getProcessedReferences

public List<org.apache.xml.security.binding.xmldsig.ReferenceType> getProcessedReferences()

getInboundSecurityToken

public InboundSecurityToken getInboundSecurityToken()

processNextHeaderEvent

public XMLSecEvent processNextHeaderEvent(InputProcessorChain inputProcessorChain)
                                   throws XMLStreamException,
                                          XMLSecurityException
Description copied from interface: InputProcessor
Will be called from the framework when the next security-header XMLEvent is requested

Specified by:
processNextHeaderEvent in interface InputProcessor
Specified by:
processNextHeaderEvent in class AbstractInputProcessor
Returns:
The next XMLSecEvent
Throws:
XMLStreamException - thrown when a streaming error occurs
XMLSecurityException - thrown when a Security failure occurs

processNextEvent

public XMLSecEvent processNextEvent(InputProcessorChain inputProcessorChain)
                             throws XMLStreamException,
                                    XMLSecurityException
Description copied from interface: InputProcessor
Will be called from the framework when the next XMLEvent is requested

Specified by:
processNextEvent in interface InputProcessor
Specified by:
processNextEvent in class AbstractInputProcessor
Returns:
The next XMLSecEvent
Throws:
XMLStreamException - thrown when a streaming error occurs
XMLSecurityException - thrown when a Security failure occurs

processElementPath

protected abstract void processElementPath(List<QName> elementPath,
                                           InputProcessorChain inputProcessorChain,
                                           XMLSecEvent xmlSecEvent,
                                           org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
                                    throws XMLSecurityException
Throws:
XMLSecurityException

resolvesResource

protected List<org.apache.xml.security.binding.xmldsig.ReferenceType> resolvesResource(XMLSecStartElement xmlSecStartElement)

doFinal

public void doFinal(InputProcessorChain inputProcessorChain)
             throws XMLStreamException,
                    XMLSecurityException
Description copied from interface: InputProcessor
Will be called when the whole document is processed.

Specified by:
doFinal in interface InputProcessor
Overrides:
doFinal in class AbstractInputProcessor
Throws:
XMLStreamException - thrown when a streaming error occurs
XMLSecurityException - thrown when a Security failure occurs

getSignatureReferenceVerifier

protected AbstractSignatureReferenceVerifyInputProcessor.InternalSignatureReferenceVerifier getSignatureReferenceVerifier(XMLSecurityProperties securityProperties,
                                                                                                                          InputProcessorChain inputProcessorChain,
                                                                                                                          org.apache.xml.security.binding.xmldsig.ReferenceType referenceType,
                                                                                                                          XMLSecStartElement startElement)
                                                                                                                   throws XMLSecurityException
Throws:
XMLSecurityException

verifyExternalReference

protected void verifyExternalReference(InputProcessorChain inputProcessorChain,
                                       InputStream inputStream,
                                       org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
                                throws XMLSecurityException,
                                       XMLStreamException
Throws:
XMLSecurityException
XMLStreamException

createMessageDigestOutputStream

protected DigestOutputStream createMessageDigestOutputStream(org.apache.xml.security.binding.xmldsig.ReferenceType referenceType,
                                                             InboundSecurityContext inboundSecurityContext)
                                                      throws XMLSecurityException
Throws:
XMLSecurityException

buildTransformerChain

protected Transformer buildTransformerChain(org.apache.xml.security.binding.xmldsig.ReferenceType referenceType,
                                            OutputStream outputStream,
                                            InputProcessorChain inputProcessorChain,
                                            AbstractSignatureReferenceVerifyInputProcessor.InternalSignatureReferenceVerifier internalSignatureReferenceVerifier)
                                     throws XMLSecurityException
Throws:
XMLSecurityException

compareDigest

protected void compareDigest(byte[] calculatedDigest,
                             org.apache.xml.security.binding.xmldsig.ReferenceType referenceType)
                      throws XMLSecurityException
Throws:
XMLSecurityException


Copyright © 2000–2014 The Apache Software Foundation. All rights reserved.