public class ContentTypeDelegatingMessageConverter extends java.lang.Object implements MessageConverter
MessageConverter
that delegates to an actual MessageConverter
based on the contentType header. Supports a default converter when no content type matches.
Note: the MessageProperties
requires a content type header to select a converter
when used for outbound conversion, but the converter will (generally) override it to match
the actual conversion.Constructor and Description |
---|
ContentTypeDelegatingMessageConverter()
Constructs an instance using a default
SimpleMessageConverter . |
ContentTypeDelegatingMessageConverter(MessageConverter defaultConverter)
Constructs an instance using a the supplied default converter.
|
Modifier and Type | Method and Description |
---|---|
void |
addDelegate(java.lang.String contentType,
MessageConverter messageConverter) |
void |
addDelgate(java.lang.String contentType,
MessageConverter messageConverter)
Deprecated.
in favor of
addDelegate(String, MessageConverter) |
java.lang.Object |
fromMessage(Message message)
Convert from a Message to a Java object.
|
protected MessageConverter |
getConverterForContentType(java.lang.String contentType) |
java.util.Map<java.lang.String,MessageConverter> |
getDelegates() |
MessageConverter |
removeDelegate(java.lang.String contentType) |
MessageConverter |
removeDelgate(java.lang.String contentType)
Deprecated.
in favor of
removeDelegate(String) |
void |
setDelegates(java.util.Map<java.lang.String,MessageConverter> delegatesByContentType) |
Message |
toMessage(java.lang.Object object,
MessageProperties messageProperties)
Convert a Java object to a Message.
|
public ContentTypeDelegatingMessageConverter()
SimpleMessageConverter
.public ContentTypeDelegatingMessageConverter(MessageConverter defaultConverter)
defaultConverter
- the converter.public void setDelegates(java.util.Map<java.lang.String,MessageConverter> delegatesByContentType)
public java.util.Map<java.lang.String,MessageConverter> getDelegates()
@Deprecated public void addDelgate(java.lang.String contentType, MessageConverter messageConverter)
addDelegate(String, MessageConverter)
contentType
- the content type to check.messageConverter
- the MessageConverter
for the content type.public void addDelegate(java.lang.String contentType, MessageConverter messageConverter)
contentType
- the content type to check.messageConverter
- the MessageConverter
for the content type.@Deprecated public MessageConverter removeDelgate(java.lang.String contentType)
removeDelegate(String)
contentType
- the content type key to remove MessageConverter
from delegates.MessageConverter
.public MessageConverter removeDelegate(java.lang.String contentType)
contentType
- the content type key to remove MessageConverter
from delegates.MessageConverter
.public java.lang.Object fromMessage(Message message) throws MessageConversionException
MessageConverter
fromMessage
in interface MessageConverter
message
- the message to convertMessageConversionException
- in case of conversion failurepublic Message toMessage(java.lang.Object object, MessageProperties messageProperties)
MessageConverter
toMessage
in interface MessageConverter
object
- the object to convertmessageProperties
- The message properties.protected MessageConverter getConverterForContentType(java.lang.String contentType)