Class AbstractDecryptInputProcessor
- java.lang.Object
-
- org.apache.xml.security.stax.ext.AbstractInputProcessor
-
- org.apache.xml.security.stax.impl.processor.input.AbstractDecryptInputProcessor
-
- All Implemented Interfaces:
InputProcessor
- Direct Known Subclasses:
XMLDecryptInputProcessor
public abstract class AbstractDecryptInputProcessor extends AbstractInputProcessor
Processor for decryption of EncryptedData XML structures- Version:
- $Revision: 1720201 $ $Date: 2015-12-15 18:13:17 +0100 (Tue, 15 Dec 2015) $
- Author:
- $Author: coheigea $
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classAbstractDecryptInputProcessor.AbstractDecryptedEventReaderInputProcessorThe DecryptedEventReaderInputProcessor reads the decrypted stream with a StAX reader and forwards the generated XMLEvents
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.IntegermaximumAllowedEncryptedDataEventsprotected static java.lang.IntegermaximumAllowedXMLStructureDepth
-
Constructor Summary
Constructors Constructor Description AbstractDecryptInputProcessor(org.apache.xml.security.binding.xmldsig.KeyInfoType keyInfoType, org.apache.xml.security.binding.xmlenc.ReferenceList referenceList, XMLSecurityProperties securityProperties)AbstractDecryptInputProcessor(XMLSecurityProperties securityProperties)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.io.InputStreamapplyTransforms(org.apache.xml.security.binding.xmlenc.ReferenceType referenceType, java.io.InputStream inputStream)voiddoFinal(InputProcessorChain inputProcessorChain)Will be called when the whole document is processed.java.util.List<org.apache.xml.security.binding.xmlenc.ReferenceType>getProcessedReferences()java.util.Map<java.lang.String,org.apache.xml.security.binding.xmlenc.ReferenceType>getReferences()protected abstract voidhandleCipherReference(InputProcessorChain inputProcessorChain, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType, javax.crypto.Cipher cipher, InboundSecurityToken inboundSecurityToken)protected abstract voidhandleEncryptedContent(InputProcessorChain inputProcessorChain, XMLSecStartElement parentXMLSecStartElement, InboundSecurityToken inboundSecurityToken, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType)protected abstract voidhandleSecurityToken(InboundSecurityToken inboundSecurityToken, InboundSecurityContext inboundSecurityContext, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType)protected org.apache.xml.security.binding.xmlenc.ReferenceTypematchesReferenceId(XMLSecStartElement xmlSecStartElement)protected abstract AbstractDecryptInputProcessor.AbstractDecryptedEventReaderInputProcessornewDecryptedEventReaderInputProcessor(boolean encryptedHeader, XMLSecStartElement xmlSecStartElement, org.apache.xml.security.binding.xmlenc.EncryptedDataType currentEncryptedDataType, InboundSecurityToken inboundSecurityToken, InboundSecurityContext inboundSecurityContext)XMLSecEventprocessNextEvent(InputProcessorChain inputProcessorChain)Will be called from the framework when the next XMLEvent is requestedXMLSecEventprocessNextHeaderEvent(InputProcessorChain inputProcessorChain)Will be called from the framework when the next security-header XMLEvent is requested-
Methods inherited from class org.apache.xml.security.stax.ext.AbstractInputProcessor
addAfterProcessor, addBeforeProcessor, getAfterProcessors, getBeforeProcessors, getPhase, getReferenceIDAttribute, getSecurityProperties, setPhase
-
-
-
-
Constructor Detail
-
AbstractDecryptInputProcessor
public AbstractDecryptInputProcessor(XMLSecurityProperties securityProperties) throws XMLSecurityException
- Throws:
XMLSecurityException
-
AbstractDecryptInputProcessor
public AbstractDecryptInputProcessor(org.apache.xml.security.binding.xmldsig.KeyInfoType keyInfoType, org.apache.xml.security.binding.xmlenc.ReferenceList referenceList, XMLSecurityProperties securityProperties) throws XMLSecurityException- Throws:
XMLSecurityException
-
-
Method Detail
-
getReferences
public java.util.Map<java.lang.String,org.apache.xml.security.binding.xmlenc.ReferenceType> getReferences()
-
getProcessedReferences
public java.util.List<org.apache.xml.security.binding.xmlenc.ReferenceType> getProcessedReferences()
-
processNextHeaderEvent
public XMLSecEvent processNextHeaderEvent(InputProcessorChain inputProcessorChain) throws javax.xml.stream.XMLStreamException, XMLSecurityException
Description copied from interface:InputProcessorWill be called from the framework when the next security-header XMLEvent is requested- Specified by:
processNextHeaderEventin interfaceInputProcessor- Specified by:
processNextHeaderEventin classAbstractInputProcessor- Returns:
- The next XMLSecEvent
- Throws:
javax.xml.stream.XMLStreamException- thrown when a streaming error occursXMLSecurityException- thrown when a Security failure occurs
-
processNextEvent
public XMLSecEvent processNextEvent(InputProcessorChain inputProcessorChain) throws javax.xml.stream.XMLStreamException, XMLSecurityException
Description copied from interface:InputProcessorWill be called from the framework when the next XMLEvent is requested- Specified by:
processNextEventin interfaceInputProcessor- Specified by:
processNextEventin classAbstractInputProcessor- Returns:
- The next XMLSecEvent
- Throws:
javax.xml.stream.XMLStreamException- thrown when a streaming error occursXMLSecurityException- thrown when a Security failure occurs
-
applyTransforms
protected java.io.InputStream applyTransforms(org.apache.xml.security.binding.xmlenc.ReferenceType referenceType, java.io.InputStream inputStream) throws XMLSecurityException- Throws:
XMLSecurityException
-
newDecryptedEventReaderInputProcessor
protected abstract AbstractDecryptInputProcessor.AbstractDecryptedEventReaderInputProcessor newDecryptedEventReaderInputProcessor(boolean encryptedHeader, XMLSecStartElement xmlSecStartElement, org.apache.xml.security.binding.xmlenc.EncryptedDataType currentEncryptedDataType, InboundSecurityToken inboundSecurityToken, InboundSecurityContext inboundSecurityContext) throws XMLSecurityException
- Throws:
XMLSecurityException
-
handleSecurityToken
protected abstract void handleSecurityToken(InboundSecurityToken inboundSecurityToken, InboundSecurityContext inboundSecurityContext, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType) throws XMLSecurityException
- Throws:
XMLSecurityException
-
handleEncryptedContent
protected abstract void handleEncryptedContent(InputProcessorChain inputProcessorChain, XMLSecStartElement parentXMLSecStartElement, InboundSecurityToken inboundSecurityToken, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType) throws XMLSecurityException
- Throws:
XMLSecurityException
-
handleCipherReference
protected abstract void handleCipherReference(InputProcessorChain inputProcessorChain, org.apache.xml.security.binding.xmlenc.EncryptedDataType encryptedDataType, javax.crypto.Cipher cipher, InboundSecurityToken inboundSecurityToken) throws XMLSecurityException
- Throws:
XMLSecurityException
-
matchesReferenceId
protected org.apache.xml.security.binding.xmlenc.ReferenceType matchesReferenceId(XMLSecStartElement xmlSecStartElement)
-
doFinal
public void doFinal(InputProcessorChain inputProcessorChain) throws javax.xml.stream.XMLStreamException, XMLSecurityException
Description copied from interface:InputProcessorWill be called when the whole document is processed.- Specified by:
doFinalin interfaceInputProcessor- Overrides:
doFinalin classAbstractInputProcessor- Throws:
javax.xml.stream.XMLStreamException- thrown when a streaming error occursXMLSecurityException- thrown when a Security failure occurs
-
-