org.springframework.messaging.core

## Interface MessageReceivingOperations<D>

- Type Parameters:
    `D` - the type of destination to receive messages from
  All Known Subinterfaces:
    DestinationResolvingMessageReceivingOperations<D>
  All Known Implementing Classes:
    AbstractDestinationResolvingMessagingTemplate, AbstractMessagingTemplate, GenericMessagingTemplate

      public interface MessageReceivingOperations<D>

  Operations for receiving messages from a destination.
  Since:
    4.0
  Author:
    Mark Fisher, Rossen Stoyanchev
  See Also:
    `GenericMessagingTemplate`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Message<?>` | `receive()` Receive a message from a default destination.
    `Message<?>` | `receive(D destination)` Receive a message from the given destination.
    `<T> T` | `receiveAndConvert(Class<T> targetClass)` Receive a message from a default destination and convert its payload to the specified target class.
    `<T> T` | `receiveAndConvert(D destination, Class<T> targetClass)` Receive a message from the given destination and convert its payload to the specified target class.

- - ### Method Detail

    - #### receive

          Message<?> receive()
                      throws MessagingException

      Receive a message from a default destination.
      Returns:
        the received message, possibly `null` if the message could not be received, for example due to a timeout
      Throws:
        `MessagingException`

    - #### receive

          Message<?> receive(D destination)
                      throws MessagingException

      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
      Throws:
        `MessagingException`

    - #### receiveAndConvert

          <T> T receiveAndConvert(Class<T> targetClass)
                           throws MessagingException

      Receive a message from a default destination and convert its payload to the specified target class.
      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
      Throws:
        `MessagingException`

    - #### receiveAndConvert

          <T> T receiveAndConvert(D destination,
                                  Class<T> targetClass)
                           throws MessagingException

      Receive a message from the given destination and convert its payload to the specified target class.
      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
      Throws:
        `MessagingException`