Interface MessageEncoder
-
- All Superinterfaces:
net.shibboleth.utilities.java.support.component.Component,net.shibboleth.utilities.java.support.component.DestructableComponent,net.shibboleth.utilities.java.support.component.InitializableComponent
- All Known Subinterfaces:
HttpClientRequestMessageEncoder,HttpServletResponseMessageEncoder
- All Known Implementing Classes:
AbstractHttpClientRequestMessageEncoder,AbstractHttpServletResponseMessageEncoder,AbstractMessageEncoder,BaseHttpClientRequestXMLMessageEncoder,BaseHttpServletResponseXMLMessageEncoder
public interface MessageEncoder extends net.shibboleth.utilities.java.support.component.InitializableComponent, net.shibboleth.utilities.java.support.component.DestructableComponentInterface for component that encodes message data from aMessageContextto a sink. Before the encoder can be used theInitializableComponent.initialize()method must be called. After the encoder has been used theDestructableComponent.destroy()should be invoked in order to clean up any resources.The sink data or structure on which the encoder operates is supplied in an implementation-specific manner.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidencode()Encode theMessageContextsupplied viasetMessageContext(MessageContext)to the sink.voidprepareContext()This method should prepare the message context by creating and populating any binding-specific data structures required in the MessageContext, prior to actually encoding.voidsetMessageContext(MessageContext messageContext)Set theMessageContextwhich is to be encoded.
-
-
-
Method Detail
-
prepareContext
void prepareContext() throws MessageEncodingExceptionThis method should prepare the message context by creating and populating any binding-specific data structures required in the MessageContext, prior to actually encoding.This method should be called after the MessageContext has been set, and before any binding-specific Handler or HandlerChains are invoked.
Example: For a SOAP encoder, this method would create and store the basic SOAP Envelope structure in the message context, so that Handlers that are invoked have a place to which to add headers.
This method may be a no-op if not required by the binding, or if the message type of the context implies that the binding-specific structures have already been created elsewhere (e.g. message-oriented code where the calling code already knows its SOAP, and is operating on the raw SOAP envelope anyway).
- Throws:
MessageEncodingException- if there is a problem preparing the message context for encoding
-
encode
void encode() throws MessageEncodingExceptionEncode theMessageContextsupplied viasetMessageContext(MessageContext)to the sink.- Throws:
MessageEncodingException- if there is a problem encoding the message context
-
setMessageContext
void setMessageContext(MessageContext messageContext)
Set theMessageContextwhich is to be encoded.- Parameters:
messageContext- the message context
-
-