Package org.apache.activemq.artemis.jms.client

## Class ActiveMQMessageProducer

- java.lang.Object
- - org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer

- All Implemented Interfaces:
    `java.lang.AutoCloseable`, `javax.jms.MessageProducer`, `javax.jms.QueueSender`, `javax.jms.TopicPublisher`

      public class ActiveMQMessageProducer
      extends java.lang.Object
      implements javax.jms.MessageProducer, javax.jms.QueueSender, javax.jms.TopicPublisher

  ActiveMQ Artemis implementation of a JMS MessageProducer.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `ActiveMQMessageProducer​(ActiveMQConnection connection, ClientProducer producer, ActiveMQDestination defaultDestination, ActiveMQSession session, ConnectionFactoryOptions options)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` |
    `long` | `getDeliveryDelay()` |
    `int` | `getDeliveryMode()` |
    `javax.jms.Destination` | `getDestination()` |
    `boolean` | `getDisableMessageID()` |
    `boolean` | `getDisableMessageTimestamp()` |
    `int` | `getPriority()` |
    `javax.jms.Queue` | `getQueue()` |
    `long` | `getTimeToLive()` |
    `javax.jms.Topic` | `getTopic()` |
    `void` | `publish​(javax.jms.Message message)` |
    `void` | `publish​(javax.jms.Message message, int deliveryMode, int priority, long timeToLive)` |
    `void` | `publish​(javax.jms.Topic topic, javax.jms.Message message)` |
    `void` | `publish​(javax.jms.Topic topic, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)` |
    `void` | `send​(javax.jms.Destination destination, javax.jms.Message message)` |
    `void` | `send​(javax.jms.Destination destination, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)` |
    `void` | `send​(javax.jms.Destination destination, javax.jms.Message message, int deliveryMode, int priority, long timeToLive, javax.jms.CompletionListener completionListener)` |
    `void` | `send​(javax.jms.Destination destination, javax.jms.Message message, javax.jms.CompletionListener completionListener)` |
    `void` | `send​(javax.jms.Message message)` |
    `void` | `send​(javax.jms.Message message, int deliveryMode, int priority, long timeToLive)` |
    `void` | `send​(javax.jms.Message message, int deliveryMode, int priority, long timeToLive, javax.jms.CompletionListener completionListener)` |
    `void` | `send​(javax.jms.Message message, javax.jms.CompletionListener completionListener)` |
    `void` | `send​(javax.jms.Queue queue, javax.jms.Message message)` |
    `void` | `send​(javax.jms.Queue queue, javax.jms.Message message, int deliveryMode, int priority, long timeToLive)` |
    `void` | `setDeliveryDelay​(long deliveryDelay)` |
    `void` | `setDeliveryMode​(int deliveryMode)` |
    `void` | `setDisableMessageID​(boolean value)` |
    `void` | `setDisableMessageTimestamp​(boolean value)` |
    `void` | `setPriority​(int defaultPriority)` |
    `void` | `setTimeToLive​(long timeToLive)` |
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ActiveMQMessageProducer

          protected ActiveMQMessageProducer​(ActiveMQConnection connection,
                                            ClientProducer producer,
                                            ActiveMQDestination defaultDestination,
                                            ActiveMQSession session,
                                            ConnectionFactoryOptions options)
                                     throws javax.jms.JMSException

      Throws:
        `javax.jms.JMSException`

  - ### Method Detail

    - #### setDisableMessageID

          public void setDisableMessageID​(boolean value)
                                   throws javax.jms.JMSException

      Specified by:
        `setDisableMessageID` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getDisableMessageID

          public boolean getDisableMessageID()
                                      throws javax.jms.JMSException

      Specified by:
        `getDisableMessageID` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### setDisableMessageTimestamp

          public void setDisableMessageTimestamp​(boolean value)
                                          throws javax.jms.JMSException

      Specified by:
        `setDisableMessageTimestamp` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getDisableMessageTimestamp

          public boolean getDisableMessageTimestamp()
                                             throws javax.jms.JMSException

      Specified by:
        `getDisableMessageTimestamp` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### setDeliveryMode

          public void setDeliveryMode​(int deliveryMode)
                               throws javax.jms.JMSException

      Specified by:
        `setDeliveryMode` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getDeliveryMode

          public int getDeliveryMode()
                              throws javax.jms.JMSException

      Specified by:
        `getDeliveryMode` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### setPriority

          public void setPriority​(int defaultPriority)
                           throws javax.jms.JMSException

      Specified by:
        `setPriority` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getPriority

          public int getPriority()
                          throws javax.jms.JMSException

      Specified by:
        `getPriority` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### setTimeToLive

          public void setTimeToLive​(long timeToLive)
                             throws javax.jms.JMSException

      Specified by:
        `setTimeToLive` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getTimeToLive

          public long getTimeToLive()
                             throws javax.jms.JMSException

      Specified by:
        `getTimeToLive` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getDestination

          public javax.jms.Destination getDestination()
                                               throws javax.jms.JMSException

      Specified by:
        `getDestination` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### close

          public void close()
                     throws javax.jms.JMSException

      Specified by:
        `close` in interface `java.lang.AutoCloseable`
      Specified by:
        `close` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Message message)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Specified by:
        `send` in interface `javax.jms.QueueSender`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Message message,
                           int deliveryMode,
                           int priority,
                           long timeToLive)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Specified by:
        `send` in interface `javax.jms.QueueSender`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Destination destination,
                           javax.jms.Message message)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Destination destination,
                           javax.jms.Message message,
                           int deliveryMode,
                           int priority,
                           long timeToLive)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### setDeliveryDelay

          public void setDeliveryDelay​(long deliveryDelay)
                                throws javax.jms.JMSException

      Specified by:
        `setDeliveryDelay` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getDeliveryDelay

          public long getDeliveryDelay()
                                throws javax.jms.JMSException

      Specified by:
        `getDeliveryDelay` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Message message,
                           javax.jms.CompletionListener completionListener)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Message message,
                           int deliveryMode,
                           int priority,
                           long timeToLive,
                           javax.jms.CompletionListener completionListener)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Destination destination,
                           javax.jms.Message message,
                           javax.jms.CompletionListener completionListener)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Destination destination,
                           javax.jms.Message message,
                           int deliveryMode,
                           int priority,
                           long timeToLive,
                           javax.jms.CompletionListener completionListener)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.MessageProducer`
      Throws:
        `javax.jms.JMSException`

    - #### getTopic

          public javax.jms.Topic getTopic()
                                   throws javax.jms.JMSException

      Specified by:
        `getTopic` in interface `javax.jms.TopicPublisher`
      Throws:
        `javax.jms.JMSException`

    - #### publish

          public void publish​(javax.jms.Message message)
                       throws javax.jms.JMSException

      Specified by:
        `publish` in interface `javax.jms.TopicPublisher`
      Throws:
        `javax.jms.JMSException`

    - #### publish

          public void publish​(javax.jms.Topic topic,
                              javax.jms.Message message)
                       throws javax.jms.JMSException

      Specified by:
        `publish` in interface `javax.jms.TopicPublisher`
      Throws:
        `javax.jms.JMSException`

    - #### publish

          public void publish​(javax.jms.Message message,
                              int deliveryMode,
                              int priority,
                              long timeToLive)
                       throws javax.jms.JMSException

      Specified by:
        `publish` in interface `javax.jms.TopicPublisher`
      Throws:
        `javax.jms.JMSException`

    - #### publish

          public void publish​(javax.jms.Topic topic,
                              javax.jms.Message message,
                              int deliveryMode,
                              int priority,
                              long timeToLive)
                       throws javax.jms.JMSException

      Specified by:
        `publish` in interface `javax.jms.TopicPublisher`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Queue queue,
                           javax.jms.Message message)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.QueueSender`
      Throws:
        `javax.jms.JMSException`

    - #### send

          public void send​(javax.jms.Queue queue,
                           javax.jms.Message message,
                           int deliveryMode,
                           int priority,
                           long timeToLive)
                    throws javax.jms.JMSException

      Specified by:
        `send` in interface `javax.jms.QueueSender`
      Throws:
        `javax.jms.JMSException`

    - #### getQueue

          public javax.jms.Queue getQueue()
                                   throws javax.jms.JMSException

      Specified by:
        `getQueue` in interface `javax.jms.QueueSender`
      Throws:
        `javax.jms.JMSException`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`