Package org.opensaml.profile.action.impl
Class EncodeMessage
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.profile.action.AbstractProfileAction
-
- org.opensaml.profile.action.impl.EncodeMessage
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction
public class EncodeMessage extends AbstractProfileAction
Action that encodes an outbound response from the outboundMessageContext.The
encoderFactoryis used to obtain a newMessageEncoderto use, and the encoder is destroyed upon completion.- Event:
EventIds.PROCEED_EVENT_ID,EventIds.INVALID_MSG_CTX,EventIds.UNABLE_TO_ENCODE- Postcondition:
- If ProfileRequestContext.getOutboundMessageContext() != null, it will be injected and encoded.
-
-
Field Summary
Fields Modifier and Type Field Description private Function<ProfileRequestContext,MessageEncoder>encoderFactoryThe function to use to obtain an encoder.private org.slf4j.LoggerlogClass logger.private MessageHandlermessageHandlerAn optionalMessageHandlerinstance to be invoked afterMessageEncoder.prepareContext()and prior toMessageEncoder.encode().private MessageContextmsgContextThe outbound MessageContext to encode.
-
Constructor Summary
Constructors Constructor Description EncodeMessage()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoExecute(ProfileRequestContext profileRequestContext)protected voiddoInitialize()protected booleandoPreExecute(ProfileRequestContext profileRequestContext)voidsetMessageEncoderFactory(Function<ProfileRequestContext,MessageEncoder> factory)Set the encoder factory to use.voidsetMessageHandler(MessageHandler handler)The suppliedMessageHandlerwill be invoked on theMessageContextafterMessageEncoder.prepareContext(), and prior to invokingMessageEncoder.encode().-
Methods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponse
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, 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.InitializableComponent
initialize, isInitialized
-
-
-
-
Field Detail
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
encoderFactory
@NonnullAfterInit private Function<ProfileRequestContext,MessageEncoder> encoderFactory
The function to use to obtain an encoder.
-
messageHandler
@Nullable private MessageHandler messageHandler
An optionalMessageHandlerinstance to be invoked afterMessageEncoder.prepareContext()and prior toMessageEncoder.encode().
-
msgContext
@Nullable private MessageContext msgContext
The outbound MessageContext to encode.
-
-
Method Detail
-
setMessageEncoderFactory
public void setMessageEncoderFactory(@Nonnull Function<ProfileRequestContext,MessageEncoder> factory)Set the encoder factory to use.- Parameters:
factory- factory to use
-
setMessageHandler
public void setMessageHandler(@Nullable MessageHandler handler)The supplied
MessageHandlerwill be invoked on theMessageContextafterMessageEncoder.prepareContext(), and prior to invokingMessageEncoder.encode(). Its use is optional and primarily used for transport/binding-specific message handling, as opposed to more generalized message handling operations which would typically be invoked earlier than this action. For more details seeMessageEncoder.- Parameters:
handler- a message handler
-
doInitialize
protected void doInitialize() throws ComponentInitializationException- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)- Overrides:
doPreExecutein classAbstractProfileAction
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)- Overrides:
doExecutein classAbstractProfileAction
-
-