Annotation Interface Queue


@Documented @Retention(RUNTIME) @Target(METHOD) @Executable(processOnStartup=true) @MessageMapping public @interface Queue
Binds a Queue to a method for receiving or sending a Message.

Usage:

 @JMSListener("myConnectionFactory")
 public class Listener {
      @Queue(
          destination = "my-queue",
          executor = "micronaut-executor-service"
      )
      public <T> void handle(T body, @Header(JMSHeaders.JMS_MESSAGE_ID) String messageID) {
          // do some logic with body and messageID
      }

      @Queue(
          destination = "my-queue-2",
          concurrency = "1-5",
          transacted = true,
          acknowledgeMode = Session.CLIENT_ACKNOWLEDGE
      )
      public <T> void handle(T body, @Header("X-Arbitrary-Header") String arbitraryHeader) {
          // do some logic with body and arbitraryHeader
      }
 }
 
Since:
1.0.0
Author:
Elliott Pope
  • Element Details

    • value

      @AliasFor(annotation=io.micronaut.messaging.annotation.MessageMapping.class, member="value") String value
      The name of the queue to target.
      Returns:
      the name
    • serializer

      String serializer
      The name of a Serializer in the bean context to use to serialize an object into a Message when sending. If not specified, defaults to DefaultSerializerDeserializer.
      Returns:
      the serializer bean name
      Default:
      ""
    • acknowledgeMode

      int acknowledgeMode
      Returns:
      the acknowledge mode for the JMSListener.
      See Also:
      • Session
      Default:
      1
    • transacted

      boolean transacted
      Whether message receipt is transacted. The broker must support transacted sessions.
      Returns:
      true if transacted
      See Also:
      • Session
      Default:
      false
    • messageSelector

      String messageSelector
      Returns:
      the message selector for the queue
      Default:
      ""
    • successHandlers

      Class<? extends JMSListenerSuccessHandler>[] successHandlers
      The success handlers to be injected into the message handling logic.
      Returns:
      the classes of the success handlers to be added. These handlers must be present as Singleton instances.
      Since:
      3.0.0
      Default:
      {}
    • errorHandlers

      Class<? extends JMSListenerErrorHandler>[] errorHandlers
      The error handlers to be injected into the message handling logic.
      Returns:
      the classes of the error handlers to be added. These handlers must be present as Singleton instances.
      Since:
      3.0.0
      Default:
      {}