Package org.apache.cxf.ws.rm
Class EncoderDecoder
- java.lang.Object
-
- org.apache.cxf.ws.rm.EncoderDecoder
-
- Direct Known Subclasses:
EncoderDecoder10AImpl
,EncoderDecoder10Impl
,EncoderDecoder11Impl
public abstract class EncoderDecoder extends Object
Base class for converting WS-ReliableMessaging structures to and from XML. Subclasses provide version-specific encoding and decoding.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.cxf.databinding.DataBinding
databinding
-
Constructor Summary
Constructors Constructor Description EncoderDecoder()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description org.apache.cxf.headers.Header
buildHeaderFault(SequenceFault sf)
Builds an element containing a WS-RM Fault.protected abstract Object
buildHeaderFaultObject(SequenceFault sf)
Build a header fault, using the correct protocol variation.void
buildHeaders(RMProperties rmps, List<org.apache.cxf.headers.Header> headers)
Builds an element containing WS-RM headers.protected abstract void
buildHeaders(SequenceType seq, Collection<SequenceAcknowledgement> acks, Collection<AckRequestedType> reqs, boolean last, List<org.apache.cxf.headers.Header> headers)
Build all required headers, using the correct protocol variation.abstract CreateSequenceType
convertReceivedCreateSequence(Object create)
Convert a received CreateSequence message to internal form.abstract CreateSequenceResponseType
convertReceivedCreateSequenceResponse(Object create)
Convert a received CreateSequenceResponse message to internal form.abstract TerminateSequenceType
convertReceivedTerminateSequence(Object term)
Convert a received TerminateSequence message to internal form.abstract Object
convertToSend(CreateSequenceResponseType create)
Convert a CreateSequenceResponse message to the correct format for transmission.abstract Object
convertToSend(CreateSequenceType create)
Convert a CreateSequence message to the correct format for transmission.abstract Object
convertToSend(TerminateSequenceType term)
Convert a TerminateSequence message to the correct format for transmission.abstract AckRequestedType
decodeAckRequestedType(Element elem)
Unmarshals a AckRequestedType, converting it if necessary to the internal form.abstract SequenceAcknowledgement
decodeSequenceAcknowledgement(Element elem)
Unmarshals a SequenceAcknowledgement, converting it if necessary to the internal form.abstract SequenceType
decodeSequenceType(Element elem)
Unmarshals a SequenceType, converting it if necessary to the internal form.abstract CloseSequenceType
decodeSequenceTypeCloseSequence(Element elem)
Generates a CloseSequenceType if a SequenceType represents a last message state.abstract Element
encodeIdentifier(Identifier id)
Marshals an Identifier to the appropriate external form.abstract Element
encodeSequenceAcknowledgement(SequenceAcknowledgement ack)
Marshals a SequenceAcknowledgement to the appropriate external form.abstract RMConstants
getConstants()
Get the WS-ReliableMessaging constants used by this encoder/decoder.protected abstract JAXBContext
getContext()
Get context for JAXB marshalling/unmarshalling.abstract Class<?>
getCreateSequenceResponseType()
Get the class used for the CreateSequenceResponseType.abstract Class<?>
getCreateSequenceType()
Get the class used for the CreateSequenceType.protected org.apache.cxf.databinding.DataBinding
getDataBinding()
Get the databinding used for the header objectsabstract Class<?>
getTerminateSequenceResponseType()
Get the class used for the TerminateSequenceResponseType.abstract Class<?>
getTerminateSequenceType()
Get the class used for the TerminateSequenceType.abstract String
getWSANamespace()
Get the WS-Addressing namespace used by this encoder/decoder.abstract String
getWSRMNamespace()
Get the WS-ReliableMessaging namespace used by this encoder/decoder.
-
-
-
Method Detail
-
getContext
protected abstract JAXBContext getContext() throws JAXBException
Get context for JAXB marshalling/unmarshalling.- Returns:
- context
- Throws:
JAXBException
-
getWSRMNamespace
public abstract String getWSRMNamespace()
Get the WS-ReliableMessaging namespace used by this encoder/decoder.- Returns:
- URI
-
getWSANamespace
public abstract String getWSANamespace()
Get the WS-Addressing namespace used by this encoder/decoder.- Returns:
- URI
-
getConstants
public abstract RMConstants getConstants()
Get the WS-ReliableMessaging constants used by this encoder/decoder.- Returns:
-
getCreateSequenceType
public abstract Class<?> getCreateSequenceType()
Get the class used for the CreateSequenceType.- Returns:
- class
-
getCreateSequenceResponseType
public abstract Class<?> getCreateSequenceResponseType()
Get the class used for the CreateSequenceResponseType.- Returns:
- class
-
getTerminateSequenceType
public abstract Class<?> getTerminateSequenceType()
Get the class used for the TerminateSequenceType.- Returns:
- class
-
getTerminateSequenceResponseType
public abstract Class<?> getTerminateSequenceResponseType()
Get the class used for the TerminateSequenceResponseType.- Returns:
- class
-
getDataBinding
protected org.apache.cxf.databinding.DataBinding getDataBinding() throws JAXBException
Get the databinding used for the header objects- Returns:
- databinding
- Throws:
JAXBException
-
buildHeaders
public void buildHeaders(RMProperties rmps, List<org.apache.cxf.headers.Header> headers) throws JAXBException
Builds an element containing WS-RM headers. This adds the appropriate WS-RM namespace declaration to the element, and then adds any WS-RM headers set in the supplied properties as child elements.- Parameters:
rmps
-headers
- the list of headers- Throws:
JAXBException
-
buildHeaderFault
public org.apache.cxf.headers.Header buildHeaderFault(SequenceFault sf) throws JAXBException
Builds an element containing a WS-RM Fault. This adds the appropriate WS-RM namespace declaration to the element, and then adds the Fault as a child element.- Parameters:
sf
-- Returns:
- Header fault
- Throws:
JAXBException
-
buildHeaders
protected abstract void buildHeaders(SequenceType seq, Collection<SequenceAcknowledgement> acks, Collection<AckRequestedType> reqs, boolean last, List<org.apache.cxf.headers.Header> headers) throws JAXBException
Build all required headers, using the correct protocol variation.- Parameters:
seq
-acks
-reqs
-last
-headers
-- Throws:
JAXBException
-
buildHeaderFaultObject
protected abstract Object buildHeaderFaultObject(SequenceFault sf)
Build a header fault, using the correct protocol variation.- Parameters:
sf
-- Returns:
- the object marshallable with the JAXContext
-
encodeSequenceAcknowledgement
public abstract Element encodeSequenceAcknowledgement(SequenceAcknowledgement ack) throws JAXBException
Marshals a SequenceAcknowledgement to the appropriate external form.- Parameters:
ack
-- Returns:
- element
- Throws:
JAXBException
-
encodeIdentifier
public abstract Element encodeIdentifier(Identifier id) throws JAXBException
Marshals an Identifier to the appropriate external form.- Parameters:
id
-- Returns:
- element
- Throws:
JAXBException
-
decodeSequenceType
public abstract SequenceType decodeSequenceType(Element elem) throws JAXBException
Unmarshals a SequenceType, converting it if necessary to the internal form.- Parameters:
elem
-- Returns:
- Throws:
JAXBException
-
decodeSequenceTypeCloseSequence
public abstract CloseSequenceType decodeSequenceTypeCloseSequence(Element elem) throws JAXBException
Generates a CloseSequenceType if a SequenceType represents a last message state.- Parameters:
elem
-- Returns:
- CloseSequenceType if last message state, else
null
- Throws:
JAXBException
-
decodeSequenceAcknowledgement
public abstract SequenceAcknowledgement decodeSequenceAcknowledgement(Element elem) throws JAXBException
Unmarshals a SequenceAcknowledgement, converting it if necessary to the internal form.- Parameters:
elem
-- Returns:
- Throws:
JAXBException
-
decodeAckRequestedType
public abstract AckRequestedType decodeAckRequestedType(Element elem) throws JAXBException
Unmarshals a AckRequestedType, converting it if necessary to the internal form.- Parameters:
elem
-- Returns:
- Throws:
JAXBException
-
convertToSend
public abstract Object convertToSend(CreateSequenceType create)
Convert a CreateSequence message to the correct format for transmission.- Parameters:
create
-- Returns:
- converted
-
convertToSend
public abstract Object convertToSend(CreateSequenceResponseType create)
Convert a CreateSequenceResponse message to the correct format for transmission.- Parameters:
create
-- Returns:
- converted
-
convertToSend
public abstract Object convertToSend(TerminateSequenceType term)
Convert a TerminateSequence message to the correct format for transmission.- Parameters:
term
-- Returns:
- converted
-
convertReceivedTerminateSequence
public abstract TerminateSequenceType convertReceivedTerminateSequence(Object term)
Convert a received TerminateSequence message to internal form.- Parameters:
term
-- Returns:
- converted
-
convertReceivedCreateSequence
public abstract CreateSequenceType convertReceivedCreateSequence(Object create)
Convert a received CreateSequence message to internal form.- Parameters:
create
-- Returns:
- converted
-
convertReceivedCreateSequenceResponse
public abstract CreateSequenceResponseType convertReceivedCreateSequenceResponse(Object create)
Convert a received CreateSequenceResponse message to internal form.- Parameters:
create
-- Returns:
- converted
-
-