Class ConvertingBytesMessageMapper

java.lang.Object
org.springframework.integration.mapping.ConvertingBytesMessageMapper
All Implemented Interfaces:
BytesMessageMapper, InboundMessageMapper<byte[]>, OutboundMessageMapper<byte[]>

public class ConvertingBytesMessageMapper
extends java.lang.Object
implements BytesMessageMapper
The BytesMessageMapper implementation to delegate to/from Message conversion into the provided MessageConverter.

The MessageConverter must not return null from its MessageConverter.fromMessage(Message, Class) and MessageConverter.toMessage(Object, MessageHeaders) methods.

If MessageConverter.fromMessage(Message, Class) returns String, it is converted to byte[] using a StandardCharsets.UTF_8 encoding.

Since:
5.4
  • Constructor Summary

    Constructors 
    Constructor Description
    ConvertingBytesMessageMapper​(org.springframework.messaging.converter.MessageConverter messageConverter)  
  • Method Summary

    Modifier and Type Method Description
    byte[] fromMessage​(org.springframework.messaging.Message<?> message)  
    org.springframework.messaging.Message<?> toMessage​(byte[] bytes, java.util.Map<java.lang.String,​java.lang.Object> headers)
    Convert a provided object to the Message and supply with headers if necessary and provided.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.springframework.integration.mapping.BytesMessageMapper

    toMessage
  • Constructor Details

    • ConvertingBytesMessageMapper

      public ConvertingBytesMessageMapper​(org.springframework.messaging.converter.MessageConverter messageConverter)
  • Method Details

    • toMessage

      @NonNull public org.springframework.messaging.Message<?> toMessage​(byte[] bytes, @Nullable java.util.Map<java.lang.String,​java.lang.Object> headers)
      Description copied from interface: InboundMessageMapper
      Convert a provided object to the Message and supply with headers if necessary and provided.
      Specified by:
      toMessage in interface BytesMessageMapper
      Specified by:
      toMessage in interface InboundMessageMapper<byte[]>
      Parameters:
      bytes - the object for message payload or some other conversion logic
      headers - additional headers for building message. Can be null
      Returns:
      the message as a result of mapping
    • fromMessage

      @NonNull public byte[] fromMessage​(org.springframework.messaging.Message<?> message)
      Specified by:
      fromMessage in interface OutboundMessageMapper<byte[]>