Class RMQMessageProducer

  • All Implemented Interfaces:
    jakarta.jms.MessageProducer, jakarta.jms.QueueSender, jakarta.jms.TopicPublisher, java.lang.AutoCloseable

    public class RMQMessageProducer
    extends java.lang.Object
    implements jakarta.jms.MessageProducer, jakarta.jms.QueueSender, jakarta.jms.TopicPublisher
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      long getDeliveryDelay()  
      int getDeliveryMode()
      jakarta.jms.Destination getDestination()
      boolean getDisableMessageID()
      boolean getDisableMessageTimestamp()
      int getPriority()
      jakarta.jms.Queue getQueue()
      long getTimeToLive()
      jakarta.jms.Topic getTopic()
      protected void internalClose()
      Method called internally or by the Session when system is shutting down
      void publish​(jakarta.jms.Message message)
      void publish​(jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive)
      void publish​(jakarta.jms.Topic topic, jakarta.jms.Message message)
      void publish​(jakarta.jms.Topic topic, jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive)
      void send​(jakarta.jms.Destination destination, jakarta.jms.Message message)
      void send​(jakarta.jms.Destination destination, jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive)
      void send​(jakarta.jms.Destination destination, jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener)  
      void send​(jakarta.jms.Destination destination, jakarta.jms.Message message, jakarta.jms.CompletionListener completionListener)  
      void send​(jakarta.jms.Message message)
      void send​(jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive)
      void send​(jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive, jakarta.jms.CompletionListener completionListener)  
      void send​(jakarta.jms.Message message, jakarta.jms.CompletionListener completionListener)  
      void send​(jakarta.jms.Queue queue, jakarta.jms.Message message)
      void send​(jakarta.jms.Queue queue, jakarta.jms.Message message, int deliveryMode, int priority, long timeToLive)
      protected void sendJMSMessage​(RMQDestination destination, RMQMessage msg, jakarta.jms.Message originalMessage, jakarta.jms.CompletionListener completionListener, int deliveryMode, int priority, long timeToLive, long deliveryDelay)  
      void setDeliveryDelay​(long deliveryDelay)  
      void setDeliveryMode​(int deliveryMode)
      void setDisableMessageID​(boolean value)
      void setDisableMessageTimestamp​(boolean value)
      void setPriority​(int defaultPriority)
      void setTimeToLive​(long timeToLive)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RMQMessageProducer

        public RMQMessageProducer​(RMQSession session,
                                  RMQDestination destination,
                                  boolean preferProducerMessageProperty,
                                  java.util.function.BiFunction<com.rabbitmq.client.AMQP.BasicProperties.Builder,​jakarta.jms.Message,​com.rabbitmq.client.AMQP.BasicProperties.Builder> amqpPropertiesCustomiser,
                                  SendingContextConsumer sendingContextConsumer)
      • RMQMessageProducer

        public RMQMessageProducer​(RMQSession session,
                                  RMQDestination destination,
                                  boolean preferProducerMessageProperty,
                                  java.util.function.BiFunction<com.rabbitmq.client.AMQP.BasicProperties.Builder,​jakarta.jms.Message,​com.rabbitmq.client.AMQP.BasicProperties.Builder> amqpPropertiesCustomiser)
      • RMQMessageProducer

        public RMQMessageProducer​(RMQSession session,
                                  RMQDestination destination,
                                  boolean preferProducerMessageProperty)
        Create a producer of messages.
        Parameters:
        session - which this producer uses
        destination - to which this producer sends messages.
        preferProducerMessageProperty - properties take precedence over respective message properties
      • RMQMessageProducer

        public RMQMessageProducer​(RMQSession session,
                                  RMQDestination destination)
        Create a producer of messages.
        Parameters:
        session - which this producer uses
        destination - to which this producer sends messages.
    • Method Detail

      • setDisableMessageID

        public void setDisableMessageID​(boolean value)
                                 throws jakarta.jms.JMSException
        Specified by:
        setDisableMessageID in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getDisableMessageID

        public boolean getDisableMessageID()
                                    throws jakarta.jms.JMSException
        Specified by:
        getDisableMessageID in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • setDisableMessageTimestamp

        public void setDisableMessageTimestamp​(boolean value)
                                        throws jakarta.jms.JMSException
        Specified by:
        setDisableMessageTimestamp in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getDisableMessageTimestamp

        public boolean getDisableMessageTimestamp()
                                           throws jakarta.jms.JMSException
        Specified by:
        getDisableMessageTimestamp in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • setDeliveryMode

        public void setDeliveryMode​(int deliveryMode)
                             throws jakarta.jms.JMSException
        Specified by:
        setDeliveryMode in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getDeliveryMode

        public int getDeliveryMode()
                            throws jakarta.jms.JMSException
        Specified by:
        getDeliveryMode in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • setPriority

        public void setPriority​(int defaultPriority)
                         throws jakarta.jms.JMSException
        Specified by:
        setPriority in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getPriority

        public int getPriority()
                        throws jakarta.jms.JMSException
        Specified by:
        getPriority in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • setTimeToLive

        public void setTimeToLive​(long timeToLive)
                           throws jakarta.jms.JMSException
        Specified by:
        setTimeToLive in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getTimeToLive

        public long getTimeToLive()
                           throws jakarta.jms.JMSException
        Specified by:
        getTimeToLive in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • getDestination

        public jakarta.jms.Destination getDestination()
                                               throws jakarta.jms.JMSException
        Specified by:
        getDestination in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • close

        public void close()
                   throws jakarta.jms.JMSException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • internalClose

        protected void internalClose()
        Method called internally or by the Session when system is shutting down
      • send

        public void send​(jakarta.jms.Message message)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Specified by:
        send in interface jakarta.jms.QueueSender
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Message message,
                         int deliveryMode,
                         int priority,
                         long timeToLive)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Specified by:
        send in interface jakarta.jms.QueueSender
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Destination destination,
                         jakarta.jms.Message message)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Destination destination,
                         jakarta.jms.Message message,
                         int deliveryMode,
                         int priority,
                         long timeToLive)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • sendJMSMessage

        protected void sendJMSMessage​(RMQDestination destination,
                                      RMQMessage msg,
                                      jakarta.jms.Message originalMessage,
                                      jakarta.jms.CompletionListener completionListener,
                                      int deliveryMode,
                                      int priority,
                                      long timeToLive,
                                      long deliveryDelay)
                               throws jakarta.jms.JMSException
        Throws:
        jakarta.jms.JMSException
      • getQueue

        public jakarta.jms.Queue getQueue()
                                   throws jakarta.jms.JMSException
        Specified by:
        getQueue in interface jakarta.jms.QueueSender
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Queue queue,
                         jakarta.jms.Message message,
                         int deliveryMode,
                         int priority,
                         long timeToLive)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.QueueSender
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Queue queue,
                         jakarta.jms.Message message)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.QueueSender
        Throws:
        jakarta.jms.JMSException
      • getTopic

        public jakarta.jms.Topic getTopic()
                                   throws jakarta.jms.JMSException
        Specified by:
        getTopic in interface jakarta.jms.TopicPublisher
        Throws:
        jakarta.jms.JMSException
      • publish

        public void publish​(jakarta.jms.Message message)
                     throws jakarta.jms.JMSException
        Specified by:
        publish in interface jakarta.jms.TopicPublisher
        Throws:
        jakarta.jms.JMSException
      • publish

        public void publish​(jakarta.jms.Message message,
                            int deliveryMode,
                            int priority,
                            long timeToLive)
                     throws jakarta.jms.JMSException
        Specified by:
        publish in interface jakarta.jms.TopicPublisher
        Throws:
        jakarta.jms.JMSException
      • publish

        public void publish​(jakarta.jms.Topic topic,
                            jakarta.jms.Message message)
                     throws jakarta.jms.JMSException
        Specified by:
        publish in interface jakarta.jms.TopicPublisher
        Throws:
        jakarta.jms.JMSException
      • publish

        public void publish​(jakarta.jms.Topic topic,
                            jakarta.jms.Message message,
                            int deliveryMode,
                            int priority,
                            long timeToLive)
                     throws jakarta.jms.JMSException
        Specified by:
        publish in interface jakarta.jms.TopicPublisher
        Throws:
        jakarta.jms.JMSException
      • setDeliveryDelay

        public void setDeliveryDelay​(long deliveryDelay)
        Specified by:
        setDeliveryDelay in interface jakarta.jms.MessageProducer
      • getDeliveryDelay

        public long getDeliveryDelay()
        Specified by:
        getDeliveryDelay in interface jakarta.jms.MessageProducer
      • send

        public void send​(jakarta.jms.Message message,
                         jakarta.jms.CompletionListener completionListener)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Message message,
                         int deliveryMode,
                         int priority,
                         long timeToLive,
                         jakarta.jms.CompletionListener completionListener)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Destination destination,
                         jakarta.jms.Message message,
                         jakarta.jms.CompletionListener completionListener)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException
      • send

        public void send​(jakarta.jms.Destination destination,
                         jakarta.jms.Message message,
                         int deliveryMode,
                         int priority,
                         long timeToLive,
                         jakarta.jms.CompletionListener completionListener)
                  throws jakarta.jms.JMSException
        Specified by:
        send in interface jakarta.jms.MessageProducer
        Throws:
        jakarta.jms.JMSException