Class HTTPSOAP11Decoder
java.lang.Object
net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
org.opensaml.messaging.decoder.AbstractMessageDecoder
org.opensaml.messaging.decoder.servlet.AbstractHttpServletRequestMessageDecoder
org.opensaml.messaging.decoder.servlet.BaseHttpServletRequestXMLMessageDecoder
org.opensaml.soap.soap11.decoder.http.impl.HTTPSOAP11Decoder
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,UnmodifiableComponent
,MessageDecoder
,HttpServletRequestMessageDecoder
- Direct Known Subclasses:
HTTPSOAP11Decoder
,HTTPSOAP11Decoder
Basic SOAP 1.1 decoder for HTTP transport.
This decoder takes a mandatory MessageHandler
instance which is used to determine
populate the message that is returned as the MessageContext.getMessage()
.
A SOAP message oriented message exchange style might just populate the Envelope as the message. An application-specific payload-oriented message exchange would handle a specific type of payload structure.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate MessageHandler
Message handler to use in processing the message body.private final org.slf4j.Logger
Class logger.Valid Content-Type media types. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doDecode()
Performs the decoding logic.protected void
Get the configured body handler MessageHandler.protected XMLObject
Get the XMLObject which will be logged as the protocol message.void
setBodyHandler
(MessageHandler newBodyHandler) Set the configured body handler MessageHandler.protected void
validateHttpRequest
(javax.servlet.http.HttpServletRequest request) Perform optional validation of the inboundHttpServletRequest
.Methods inherited from class org.opensaml.messaging.decoder.servlet.BaseHttpServletRequestXMLMessageDecoder
decode, doDestroy, getParserPool, logDecodedMessage, setParserPool, unmarshallMessage
Methods inherited from class org.opensaml.messaging.decoder.servlet.AbstractHttpServletRequestMessageDecoder
getHttpServletRequest, setHttpServletRequest
Methods inherited from class org.opensaml.messaging.decoder.AbstractMessageDecoder
getMessageContext, setMessageContext
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, initialize, isDestroyed, isInitialized
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.shibboleth.utilities.java.support.component.DestructableComponent
destroy, isDestroyed
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
Methods inherited from interface org.opensaml.messaging.decoder.MessageDecoder
getMessageContext
-
Field Details
-
SUPPORTED_MEDIA_TYPES
Valid Content-Type media types. -
log
private final org.slf4j.Logger logClass logger. -
bodyHandler
Message handler to use in processing the message body.
-
-
Constructor Details
-
HTTPSOAP11Decoder
public HTTPSOAP11Decoder()
-
-
Method Details
-
getBodyHandler
Get the configured body handler MessageHandler.- Returns:
- Returns the bodyHandler.
-
setBodyHandler
Set the configured body handler MessageHandler.- Parameters:
newBodyHandler
- The bodyHandler to set.
-
doDecode
Performs the decoding logic. By the time this is called, this decoder has already been initialized and checked to ensure that it has not been destroyed.- Specified by:
doDecode
in classAbstractMessageDecoder
- Throws:
MessageDecodingException
- thrown if there is a problem decoding the message
-
doInitialize
- Overrides:
doInitialize
in classBaseHttpServletRequestXMLMessageDecoder
- Throws:
ComponentInitializationException
-
getMessageToLog
Get the XMLObject which will be logged as the protocol message.- Overrides:
getMessageToLog
in classBaseHttpServletRequestXMLMessageDecoder
- Returns:
- the XMLObject message considered to be the protocol message for logging purposes
-
validateHttpRequest
protected void validateHttpRequest(javax.servlet.http.HttpServletRequest request) throws MessageDecodingException Perform optional validation of the inboundHttpServletRequest
.This method is called before the main
MessageDecoder.decode()
logic}.The default behavior is a no-op. Subclasses may override with specific constraints.
- Overrides:
validateHttpRequest
in classBaseHttpServletRequestXMLMessageDecoder
- Parameters:
request
- the HTTP request being validate- Throws:
MessageDecodingException
- if request is not considered valid
-