Interface JmsMessageOperations

All Superinterfaces:
MessageReceivingOperations<Destination>, MessageRequestReplyOperations<Destination>, MessageSendingOperations<Destination>
All Known Implementing Classes:
JmsMessagingTemplate

A specialization of MessageSendingOperations, MessageReceivingOperations and MessageRequestReplyOperations for JMS related operations that allow to specify a destination name rather than the actual Destination.

Note: Operations in this interface throw MessagingException instead of the JMS-specific JmsException, aligning with the spring-messaging module and its other client operation handles.

Since:
4.1
Author:
Stephane Nicoll
See Also:
  • Method Details

    • send

      void send(String destinationName, Message<?> message) throws MessagingException
      Send a message to the given destination.
      Parameters:
      destinationName - the name of the target destination
      message - the message to send
      Throws:
      MessagingException
    • convertAndSend

      void convertAndSend(String destinationName, Object payload) throws MessagingException
      Convert the given Object to serialized form, possibly using a MessageConverter, wrap it as a message and send it to the given destination.
      Parameters:
      destinationName - the name of the target destination
      payload - the Object to use as payload
      Throws:
      MessagingException
    • convertAndSend

      void convertAndSend(String destinationName, Object payload, @Nullable Map<String,Object> headers) throws MessagingException
      Convert the given Object to serialized form, possibly using a MessageConverter, wrap it as a message with the given headers and send it to the given destination.
      Parameters:
      destinationName - the name of the target destination
      payload - the Object to use as payload
      headers - the headers for the message to send
      Throws:
      MessagingException
    • convertAndSend

      void convertAndSend(String destinationName, Object payload, @Nullable MessagePostProcessor postProcessor) throws MessagingException
      Convert the given Object to serialized form, possibly using a MessageConverter, wrap it as a message, apply the given post-processor, and send the resulting message to the given destination.
      Parameters:
      destinationName - the name of the target destination
      payload - the Object to use as payload
      postProcessor - the post-processor to apply to the message
      Throws:
      MessagingException
    • convertAndSend

      void convertAndSend(String destinationName, Object payload, @Nullable Map<String,Object> headers, @Nullable MessagePostProcessor postProcessor) throws MessagingException
      Convert the given Object to serialized form, possibly using a MessageConverter, wrap it as a message with the given headers, apply the given post-processor, and send the resulting message to the given destination.
      Parameters:
      destinationName - the name of the target destination
      payload - the Object to use as payload
      headers - the headers for the message to send
      postProcessor - the post-processor to apply to the message
      Throws:
      MessagingException
    • receive

      @Nullable Message<?> receive(String destinationName) throws MessagingException
      Receive a message from the given destination.
      Parameters:
      destinationName - the name of 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

      @Nullable <T> T receiveAndConvert(String destinationName, Class<T> targetClass) throws MessagingException
      Receive a message from the given destination and convert its payload to the specified target class.
      Parameters:
      destinationName - the name of 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
    • sendAndReceive

      @Nullable Message<?> sendAndReceive(String destinationName, Message<?> requestMessage) throws MessagingException
      Send a request message and receive the reply from the given destination.
      Parameters:
      destinationName - the name of the target destination
      requestMessage - the message to send
      Returns:
      the reply, possibly null if the message could not be received, for example due to a timeout
      Throws:
      MessagingException
    • convertSendAndReceive

      @Nullable <T> T convertSendAndReceive(String destinationName, Object request, Class<T> targetClass) throws MessagingException
      Convert the given request Object to serialized form, possibly using a MessageConverter, send it as a Message to the given destination, receive the reply and convert its body of the specified target class.
      Parameters:
      destinationName - the name of the target destination
      request - payload for the request message to send
      targetClass - the target type to convert the payload of the reply to
      Returns:
      the payload of the reply message, possibly null if the message could not be received, for example due to a timeout
      Throws:
      MessagingException
    • convertSendAndReceive

      @Nullable <T> T convertSendAndReceive(String destinationName, Object request, @Nullable Map<String,Object> headers, Class<T> targetClass) throws MessagingException
      Convert the given request Object to serialized form, possibly using a MessageConverter, send it as a Message with the given headers, to the specified destination, receive the reply and convert its body of the specified target class.
      Parameters:
      destinationName - the name of the target destination
      request - payload for the request message to send
      headers - the headers for the request message to send
      targetClass - the target type to convert the payload of the reply to
      Returns:
      the payload of the reply message, possibly null if the message could not be received, for example due to a timeout
      Throws:
      MessagingException
    • convertSendAndReceive

      @Nullable <T> T convertSendAndReceive(String destinationName, Object request, Class<T> targetClass, MessagePostProcessor requestPostProcessor) throws MessagingException
      Convert the given request Object to serialized form, possibly using a MessageConverter, apply the given post-processor and send the resulting Message to the given destination, receive the reply and convert its body of the given target class.
      Parameters:
      destinationName - the name of the target destination
      request - payload for the request message to send
      targetClass - the target type to convert the payload of the reply to
      requestPostProcessor - post-process to apply to the request message
      Returns:
      the payload of the reply message, possibly null if the message could not be received, for example due to a timeout
      Throws:
      MessagingException
    • convertSendAndReceive

      @Nullable <T> T convertSendAndReceive(String destinationName, Object request, Map<String,Object> headers, Class<T> targetClass, MessagePostProcessor requestPostProcessor) throws MessagingException
      Convert the given request Object to serialized form, possibly using a MessageConverter, wrap it as a message with the given headers, apply the given post-processor and send the resulting Message to the specified destination, receive the reply and convert its body of the given target class.
      Parameters:
      destinationName - the name of the target destination
      request - payload for the request message to send
      targetClass - the target type to convert the payload of the reply to
      requestPostProcessor - post-process to apply to the request message
      Returns:
      the payload of the reply message, possibly null if the message could not be received, for example due to a timeout
      Throws:
      MessagingException