Class AbstractMessagingMessageConverter<S>

java.lang.Object
io.awspring.cloud.sqs.support.converter.AbstractMessagingMessageConverter<S>
All Implemented Interfaces:
ContextAwareMessagingMessageConverter<S>, MessagingMessageConverter<S>
Direct Known Subclasses:
SqsMessagingMessageConverter

public abstract class AbstractMessagingMessageConverter<S> extends Object implements ContextAwareMessagingMessageConverter<S>
MessagingMessageConverter implementation for converting SQS Message instances to Spring Messaging Message instances.
Since:
3.0
Author:
Tomaz Fernandes
See Also:
  • Constructor Details

    • AbstractMessagingMessageConverter

      public AbstractMessagingMessageConverter()
  • Method Details

    • setPayloadTypeMapper

      public void setPayloadTypeMapper(Function<Message<?>,Class<?>> payloadTypeMapper)
      Set the payload type mapper to be used by this converter. Message payloads will be converted to the Class returned by this function. The defaultHeaderTypeMapping(org.springframework.messaging.Message<?>) uses the typeHeader property to retrieve the payload class' FQCN. This method replaces the default type mapping for this converter instance.
      Parameters:
      payloadTypeMapper - the type mapping function.
    • setPayloadMessageConverter

      public void setPayloadMessageConverter(MessageConverter messageConverter)
      Set the MessageConverter to be used for converting the Message instances payloads. The default is DEFAULT_MESSAGE_CONVERTER.
      Parameters:
      messageConverter - the converter instances.
    • setPayloadTypeHeader

      public void setPayloadTypeHeader(String typeHeader)
      Set the name of the header to be looked up in a Message instance by the defaultHeaderTypeMapping(Message).
      Parameters:
      typeHeader - the header name.
    • setHeaderMapper

      public void setHeaderMapper(HeaderMapper<S> headerMapper)
      Set the HeaderMapper to used to convert headers for Message instances.
      Parameters:
      headerMapper - the header mapper instance.
    • getDefaultHeaderMapper

      protected abstract HeaderMapper<S> getDefaultHeaderMapper()
    • toMessagingMessage

      public Message<?> toMessagingMessage(S message, @Nullable MessageConversionContext context)
      Specified by:
      toMessagingMessage in interface ContextAwareMessagingMessageConverter<S>
    • getPayloadToConvert

      protected abstract Object getPayloadToConvert(S message)
    • createMessageConversionContext

      public MessageConversionContext createMessageConversionContext()
      Specified by:
      createMessageConversionContext in interface ContextAwareMessagingMessageConverter<S>
    • fromMessagingMessage

      public S fromMessagingMessage(Message<?> message)
      Specified by:
      fromMessagingMessage in interface MessagingMessageConverter<S>