Class AbstractMessageReceivingTemplate<D>

java.lang.Object
org.springframework.messaging.core.AbstractMessageSendingTemplate<D>
org.springframework.messaging.core.AbstractMessageReceivingTemplate<D>
Type Parameters:
D - the destination type
All Implemented Interfaces:
MessageReceivingOperations<D>, MessageSendingOperations<D>
Direct Known Subclasses:
AbstractMessagingTemplate

public abstract class AbstractMessageReceivingTemplate<D> extends AbstractMessageSendingTemplate<D> implements MessageReceivingOperations<D>
An extension of AbstractMessageSendingTemplate that adds support for receive style operations as defined by MessageReceivingOperations.
Since:
4.1
Author:
Mark Fisher, Rossen Stoyanchev, Stephane Nicoll
  • Constructor Details

    • AbstractMessageReceivingTemplate

      public AbstractMessageReceivingTemplate()
  • Method Details

    • receive

      @Nullable public Message<?> receive()
      Description copied from interface: MessageReceivingOperations
      Receive a message from a default destination.
      Specified by:
      receive in interface MessageReceivingOperations<D>
      Returns:
      the received message, possibly null if the message could not be received, for example due to a timeout
    • receive

      @Nullable public Message<?> receive(D destination)
      Description copied from interface: MessageReceivingOperations
      Receive a message from the given destination.
      Specified by:
      receive in interface MessageReceivingOperations<D>
      Parameters:
      destination - the target destination
      Returns:
      the received message, possibly null if the message could not be received, for example due to a timeout
    • doReceive

      @Nullable protected abstract Message<?> doReceive(D destination)
      Actually receive a message from the given destination.
      Parameters:
      destination - the target destination
      Returns:
      the received message, possibly null if the message could not be received, for example due to a timeout
    • receiveAndConvert

      @Nullable public <T> T receiveAndConvert(Class<T> targetClass)
      Description copied from interface: MessageReceivingOperations
      Receive a message from a default destination and convert its payload to the specified target class.
      Specified by:
      receiveAndConvert in interface MessageReceivingOperations<D>
      Parameters:
      targetClass - the target class to convert the payload to
      Returns:
      the converted payload of the reply message, possibly null if the message could not be received, for example due to a timeout
    • receiveAndConvert

      @Nullable public <T> T receiveAndConvert(D destination, Class<T> targetClass)
      Description copied from interface: MessageReceivingOperations
      Receive a message from the given destination and convert its payload to the specified target class.
      Specified by:
      receiveAndConvert in interface MessageReceivingOperations<D>
      Parameters:
      destination - the target destination
      targetClass - the target class to convert the payload to
      Returns:
      the converted payload of the reply message, possibly null if the message could not be received, for example due to a timeout
    • doConvert

      @Nullable protected <T> T doConvert(Message<?> message, Class<T> targetClass)
      Convert from the given message to the given target class.
      Parameters:
      message - the message to convert
      targetClass - the target class to convert the payload to
      Returns:
      the converted payload of the reply message (never null)