Class MAPCodec
java.lang.Object
org.apache.cxf.phase.AbstractPhaseInterceptor<org.apache.cxf.binding.soap.SoapMessage>
org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor
org.apache.cxf.ws.addressing.soap.MAPCodec
- All Implemented Interfaces:
org.apache.cxf.binding.soap.interceptor.SoapInterceptor,org.apache.cxf.interceptor.Interceptor<org.apache.cxf.binding.soap.SoapMessage>,org.apache.cxf.phase.PhaseInterceptor<org.apache.cxf.binding.soap.SoapMessage>
public class MAPCodec
extends org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor
SOAP interceptor responsible for {en|de}coding the Message Addressing
Properties for {outgo|incom}ing messages.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final MAPCodecREVISIT: map usage that the *same* interceptor instance is used in all chains. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T> TdecodeAsNative(String encodedAs, Class<T> clz, Element headerElement, jakarta.xml.bind.Unmarshaller unmarshaller) Decodes a MAP from a exposed version.protected <T> TDecodes a MAP from a SOAP header.protected <T> voidencodeMAP(org.apache.cxf.binding.soap.SoapMessage message, T value, QName qname, Class<T> clz, jakarta.xml.bind.JAXBContext ctx, boolean mustUnderstand) Encodes an MAP as a SOAP header.protected MAPCodec.HeaderFactorystatic MAPCodecgetInstance(org.apache.cxf.Bus bus) voidhandleFault(org.apache.cxf.binding.soap.SoapMessage message) Invoked when unwinding normal interceptor chain when a fault occurred.voidhandleMessage(org.apache.cxf.binding.soap.SoapMessage message) Invoked for normal processing of inbound and outbound messages.protected voidsetHeaderFactory(MAPCodec.HeaderFactory factory) org.apache.cxf.ws.addressing.AddressingPropertiesunmarshalMAPs(org.apache.cxf.binding.soap.SoapMessage message) Decode the MAPs from protocol-specific headers.Methods inherited from class org.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor
getFaultCodePrefix, getRoles, prepareStackTraceMethods inherited from class org.apache.cxf.phase.AbstractPhaseInterceptor
addAfter, addAfter, addBefore, addBefore, getAdditionalInterceptors, getAfter, getBefore, getId, getPhase, isGET, isRequestor, setAfter, setBefore
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
MAPCodec
public MAPCodec()Constructor.
-
-
Method Details
-
getInstance
-
getUnderstoodHeaders
- Specified by:
getUnderstoodHeadersin interfaceorg.apache.cxf.binding.soap.interceptor.SoapInterceptor- Overrides:
getUnderstoodHeadersin classorg.apache.cxf.binding.soap.interceptor.AbstractSoapInterceptor- Returns:
- the set of SOAP headers understood by this handler
-
handleMessage
public void handleMessage(org.apache.cxf.binding.soap.SoapMessage message) Invoked for normal processing of inbound and outbound messages.- Parameters:
message- the messsage
-
handleFault
public void handleFault(org.apache.cxf.binding.soap.SoapMessage message) Invoked when unwinding normal interceptor chain when a fault occurred.- Specified by:
handleFaultin interfaceorg.apache.cxf.interceptor.Interceptor<org.apache.cxf.binding.soap.SoapMessage>- Overrides:
handleFaultin classorg.apache.cxf.phase.AbstractPhaseInterceptor<org.apache.cxf.binding.soap.SoapMessage>- Parameters:
message- the messsage message
-
unmarshalMAPs
public org.apache.cxf.ws.addressing.AddressingProperties unmarshalMAPs(org.apache.cxf.binding.soap.SoapMessage message) Decode the MAPs from protocol-specific headers.- Parameters:
message- the SOAP message- Returns:
- the decoded MAPs
- Throws:
SOAPFaultException- if decoded MAPs are invalid
-
decodeAsNative
public <T> T decodeAsNative(String encodedAs, Class<T> clz, Element headerElement, jakarta.xml.bind.Unmarshaller unmarshaller) throws jakarta.xml.bind.JAXBException Decodes a MAP from a exposed version.- Parameters:
encodedAs- specifies the encoded versionclz- the classheaderElement- the SOAP header elementunmarshaller- the JAXB unmarshaller to use- Returns:
- the decoded value
- Throws:
jakarta.xml.bind.JAXBException
-
encodeMAP
protected <T> void encodeMAP(org.apache.cxf.binding.soap.SoapMessage message, T value, QName qname, Class<T> clz, jakarta.xml.bind.JAXBContext ctx, boolean mustUnderstand) throws jakarta.xml.bind.JAXBException Encodes an MAP as a SOAP header.- Parameters:
message- the message to store the headers onvalue- the value to encodeqname- the QName for the headerclz- the classctx- the JAXBContentmustUnderstand-- Throws:
jakarta.xml.bind.JAXBException
-
decodeMAP
protected <T> T decodeMAP(Class<T> clz, Element headerElement, jakarta.xml.bind.Unmarshaller unmarshaller) throws jakarta.xml.bind.JAXBException Decodes a MAP from a SOAP header.- Parameters:
clz- the classheaderElement- the SOAP header elementunmarshaller- the JAXB unmarshaller to use- Returns:
- the decoded value
- Throws:
jakarta.xml.bind.JAXBException
-
getHeaderFactory
-
setHeaderFactory
-