Class ActiveMQRASession

  • All Implemented Interfaces:
    jakarta.jms.QueueSession, jakarta.jms.Session, jakarta.jms.TopicSession, jakarta.jms.XAQueueSession, jakarta.jms.XASession, jakarta.jms.XATopicSession, java.lang.AutoCloseable, java.lang.Runnable

    public class ActiveMQRASession
    extends java.lang.Object
    implements jakarta.jms.QueueSession, jakarta.jms.TopicSession, jakarta.jms.XAQueueSession, jakarta.jms.XATopicSession
    A joint interface for JMS sessions
    • Field Summary

      • Fields inherited from interface jakarta.jms.Session

        AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE, SESSION_TRANSACTED
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void checkState()  
      void close()
      Closes the session.
      void commit()
      Commit
      jakarta.jms.QueueBrowser createBrowser​(jakarta.jms.Queue queue)
      Create a browser
      jakarta.jms.QueueBrowser createBrowser​(jakarta.jms.Queue queue, java.lang.String messageSelector)
      Create a browser
      jakarta.jms.BytesMessage createBytesMessage()
      Create a bytes message
      jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination)
      Create a message consumer
      jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination, java.lang.String messageSelector)
      Create a message consumer
      jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination, java.lang.String messageSelector, boolean noLocal)
      Create a message consumer
      jakarta.jms.MessageConsumer createDurableConsumer​(jakarta.jms.Topic topic, java.lang.String name)  
      jakarta.jms.MessageConsumer createDurableConsumer​(jakarta.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal)  
      jakarta.jms.TopicSubscriber createDurableSubscriber​(jakarta.jms.Topic topic, java.lang.String name)
      Create a durable topic subscriber
      jakarta.jms.TopicSubscriber createDurableSubscriber​(jakarta.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal)
      Create a topic subscriber
      jakarta.jms.MapMessage createMapMessage()
      Create a map message
      jakarta.jms.Message createMessage()
      Create a message
      jakarta.jms.ObjectMessage createObjectMessage()
      Create an object message
      jakarta.jms.ObjectMessage createObjectMessage​(java.io.Serializable object)
      Create an object message
      jakarta.jms.MessageProducer createProducer​(jakarta.jms.Destination destination)
      Create a message producer
      jakarta.jms.TopicPublisher createPublisher​(jakarta.jms.Topic topic)
      Create a topic publisher
      jakarta.jms.Queue createQueue​(java.lang.String queueName)
      Create a queue
      jakarta.jms.QueueReceiver createReceiver​(jakarta.jms.Queue queue)
      Create a queue receiver
      jakarta.jms.QueueReceiver createReceiver​(jakarta.jms.Queue queue, java.lang.String messageSelector)
      Create a queue receiver
      jakarta.jms.QueueSender createSender​(jakarta.jms.Queue queue)
      Create a queue sender
      jakarta.jms.MessageConsumer createSharedConsumer​(jakarta.jms.Topic topic, java.lang.String sharedSubscriptionName)  
      jakarta.jms.MessageConsumer createSharedConsumer​(jakarta.jms.Topic topic, java.lang.String sharedSubscriptionName, java.lang.String messageSelector)  
      jakarta.jms.MessageConsumer createSharedDurableConsumer​(jakarta.jms.Topic topic, java.lang.String name)  
      jakarta.jms.MessageConsumer createSharedDurableConsumer​(jakarta.jms.Topic topic, java.lang.String name, java.lang.String messageSelector)  
      jakarta.jms.StreamMessage createStreamMessage()
      Create a stream message
      jakarta.jms.TopicSubscriber createSubscriber​(jakarta.jms.Topic topic)
      Create a topic subscriber
      jakarta.jms.TopicSubscriber createSubscriber​(jakarta.jms.Topic topic, java.lang.String messageSelector, boolean noLocal)
      Create a topic subscriber
      jakarta.jms.TemporaryQueue createTemporaryQueue()
      Create a temporary queue
      jakarta.jms.TemporaryTopic createTemporaryTopic()
      Create a temporary topic
      jakarta.jms.TextMessage createTextMessage()
      Create a text message
      jakarta.jms.TextMessage createTextMessage​(java.lang.String string)
      Create a text message
      jakarta.jms.Topic createTopic​(java.lang.String topicName)
      Create a topic
      int getAcknowledgeMode()
      Get the acknowledge mode
      jakarta.resource.spi.ManagedConnection getManagedConnection()
      for tests only
      jakarta.jms.MessageListener getMessageListener()
      Get the message listener -- throws IllegalStateException
      java.lang.String getNodeId()
      Returns the ID of the Node that this session is associated with.
      jakarta.jms.QueueSession getQueueSession()
      Get the queue session
      jakarta.jms.Session getSession()
      Get the session
      jakarta.jms.TopicSession getTopicSession()
      Get the topic session
      boolean getTransacted()
      Get transacted
      javax.transaction.xa.XAResource getXAResource()
      Get the XA resource
      protected void lock()
      Lock
      void recover()
      Recover
      void rollback()
      Rollback
      void run()
      Always throws an Error.
      void setActiveMQSessionFactory​(ActiveMQRASessionFactory sf)
      Set the session factory
      void setMessageListener​(jakarta.jms.MessageListener listener)
      Set the message listener -- Throws IllegalStateException
      protected void unlock()
      Unlock
      void unsubscribe​(java.lang.String name)
      Unsubscribe
      • Methods inherited from class java.lang.Object

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

      • setActiveMQSessionFactory

        public void setActiveMQSessionFactory​(ActiveMQRASessionFactory sf)
        Set the session factory
        Parameters:
        sf - The session factory
      • lock

        protected void lock()
                     throws jakarta.jms.JMSException
        Lock
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
        jakarta.jms.IllegalStateException - The session is closed
      • unlock

        protected void unlock()
        Unlock
      • createBytesMessage

        public jakarta.jms.BytesMessage createBytesMessage()
                                                    throws jakarta.jms.JMSException
        Create a bytes message
        Specified by:
        createBytesMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createMapMessage

        public jakarta.jms.MapMessage createMapMessage()
                                                throws jakarta.jms.JMSException
        Create a map message
        Specified by:
        createMapMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createMessage

        public jakarta.jms.Message createMessage()
                                          throws jakarta.jms.JMSException
        Create a message
        Specified by:
        createMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createObjectMessage

        public jakarta.jms.ObjectMessage createObjectMessage()
                                                      throws jakarta.jms.JMSException
        Create an object message
        Specified by:
        createObjectMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createObjectMessage

        public jakarta.jms.ObjectMessage createObjectMessage​(java.io.Serializable object)
                                                      throws jakarta.jms.JMSException
        Create an object message
        Specified by:
        createObjectMessage in interface jakarta.jms.Session
        Parameters:
        object - The object
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createStreamMessage

        public jakarta.jms.StreamMessage createStreamMessage()
                                                      throws jakarta.jms.JMSException
        Create a stream message
        Specified by:
        createStreamMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createTextMessage

        public jakarta.jms.TextMessage createTextMessage()
                                                  throws jakarta.jms.JMSException
        Create a text message
        Specified by:
        createTextMessage in interface jakarta.jms.Session
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createTextMessage

        public jakarta.jms.TextMessage createTextMessage​(java.lang.String string)
                                                  throws jakarta.jms.JMSException
        Create a text message
        Specified by:
        createTextMessage in interface jakarta.jms.Session
        Parameters:
        string - The text
        Returns:
        The message
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getTransacted

        public boolean getTransacted()
                              throws jakarta.jms.JMSException
        Get transacted
        Specified by:
        getTransacted in interface jakarta.jms.Session
        Specified by:
        getTransacted in interface jakarta.jms.XASession
        Returns:
        True if transacted; otherwise false
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getMessageListener

        public jakarta.jms.MessageListener getMessageListener()
                                                       throws jakarta.jms.JMSException
        Get the message listener -- throws IllegalStateException
        Specified by:
        getMessageListener in interface jakarta.jms.Session
        Returns:
        The message listener
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • setMessageListener

        public void setMessageListener​(jakarta.jms.MessageListener listener)
                                throws jakarta.jms.JMSException
        Set the message listener -- Throws IllegalStateException
        Specified by:
        setMessageListener in interface jakarta.jms.Session
        Parameters:
        listener - The message listener
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • run

        public void run()
        Always throws an Error.
        Specified by:
        run in interface java.lang.Runnable
        Specified by:
        run in interface jakarta.jms.Session
        Throws:
        java.lang.Error - Method not allowed.
      • close

        public void close()
                   throws jakarta.jms.JMSException
        Closes the session. Sends a ConnectionEvent.CONNECTION_CLOSED to the managed connection.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException - Failed to close session.
      • commit

        public void commit()
                    throws jakarta.jms.JMSException
        Commit
        Specified by:
        commit in interface jakarta.jms.Session
        Specified by:
        commit in interface jakarta.jms.XASession
        Throws:
        jakarta.jms.JMSException - Failed to close session.
      • rollback

        public void rollback()
                      throws jakarta.jms.JMSException
        Rollback
        Specified by:
        rollback in interface jakarta.jms.Session
        Specified by:
        rollback in interface jakarta.jms.XASession
        Throws:
        jakarta.jms.JMSException - Failed to close session.
      • recover

        public void recover()
                     throws jakarta.jms.JMSException
        Recover
        Specified by:
        recover in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException - Failed to close session.
      • createTopic

        public jakarta.jms.Topic createTopic​(java.lang.String topicName)
                                      throws jakarta.jms.JMSException
        Create a topic
        Specified by:
        createTopic in interface jakarta.jms.Session
        Specified by:
        createTopic in interface jakarta.jms.TopicSession
        Parameters:
        topicName - The topic name
        Returns:
        The topic
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createSubscriber

        public jakarta.jms.TopicSubscriber createSubscriber​(jakarta.jms.Topic topic)
                                                     throws jakarta.jms.JMSException
        Create a topic subscriber
        Specified by:
        createSubscriber in interface jakarta.jms.TopicSession
        Parameters:
        topic - The topic
        Returns:
        The subscriber
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createSubscriber

        public jakarta.jms.TopicSubscriber createSubscriber​(jakarta.jms.Topic topic,
                                                            java.lang.String messageSelector,
                                                            boolean noLocal)
                                                     throws jakarta.jms.JMSException
        Create a topic subscriber
        Specified by:
        createSubscriber in interface jakarta.jms.TopicSession
        Parameters:
        topic - The topic
        messageSelector - The message selector
        noLocal - If true inhibits the delivery of messages published by its own connection
        Returns:
        The subscriber
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createDurableSubscriber

        public jakarta.jms.TopicSubscriber createDurableSubscriber​(jakarta.jms.Topic topic,
                                                                   java.lang.String name)
                                                            throws jakarta.jms.JMSException
        Create a durable topic subscriber
        Specified by:
        createDurableSubscriber in interface jakarta.jms.Session
        Specified by:
        createDurableSubscriber in interface jakarta.jms.TopicSession
        Parameters:
        topic - The topic
        name - The name
        Returns:
        The subscriber
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createDurableSubscriber

        public jakarta.jms.TopicSubscriber createDurableSubscriber​(jakarta.jms.Topic topic,
                                                                   java.lang.String name,
                                                                   java.lang.String messageSelector,
                                                                   boolean noLocal)
                                                            throws jakarta.jms.JMSException
        Create a topic subscriber
        Specified by:
        createDurableSubscriber in interface jakarta.jms.Session
        Specified by:
        createDurableSubscriber in interface jakarta.jms.TopicSession
        Parameters:
        topic - The topic
        name - The name
        messageSelector - The message selector
        noLocal - If true inhibits the delivery of messages published by its own connection
        Returns:
        The subscriber
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createPublisher

        public jakarta.jms.TopicPublisher createPublisher​(jakarta.jms.Topic topic)
                                                   throws jakarta.jms.JMSException
        Create a topic publisher
        Specified by:
        createPublisher in interface jakarta.jms.TopicSession
        Parameters:
        topic - The topic
        Returns:
        The publisher
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createTemporaryTopic

        public jakarta.jms.TemporaryTopic createTemporaryTopic()
                                                        throws jakarta.jms.JMSException
        Create a temporary topic
        Specified by:
        createTemporaryTopic in interface jakarta.jms.Session
        Specified by:
        createTemporaryTopic in interface jakarta.jms.TopicSession
        Returns:
        The temporary topic
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • unsubscribe

        public void unsubscribe​(java.lang.String name)
                         throws jakarta.jms.JMSException
        Unsubscribe
        Specified by:
        unsubscribe in interface jakarta.jms.Session
        Specified by:
        unsubscribe in interface jakarta.jms.TopicSession
        Parameters:
        name - The name
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createBrowser

        public jakarta.jms.QueueBrowser createBrowser​(jakarta.jms.Queue queue)
                                               throws jakarta.jms.JMSException
        Create a browser
        Specified by:
        createBrowser in interface jakarta.jms.QueueSession
        Specified by:
        createBrowser in interface jakarta.jms.Session
        Parameters:
        queue - The queue
        Returns:
        The browser
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createBrowser

        public jakarta.jms.QueueBrowser createBrowser​(jakarta.jms.Queue queue,
                                                      java.lang.String messageSelector)
                                               throws jakarta.jms.JMSException
        Create a browser
        Specified by:
        createBrowser in interface jakarta.jms.QueueSession
        Specified by:
        createBrowser in interface jakarta.jms.Session
        Parameters:
        queue - The queue
        messageSelector - The message selector
        Returns:
        The browser
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createQueue

        public jakarta.jms.Queue createQueue​(java.lang.String queueName)
                                      throws jakarta.jms.JMSException
        Create a queue
        Specified by:
        createQueue in interface jakarta.jms.QueueSession
        Specified by:
        createQueue in interface jakarta.jms.Session
        Parameters:
        queueName - The queue name
        Returns:
        The queue
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createReceiver

        public jakarta.jms.QueueReceiver createReceiver​(jakarta.jms.Queue queue)
                                                 throws jakarta.jms.JMSException
        Create a queue receiver
        Specified by:
        createReceiver in interface jakarta.jms.QueueSession
        Parameters:
        queue - The queue
        Returns:
        The queue receiver
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createReceiver

        public jakarta.jms.QueueReceiver createReceiver​(jakarta.jms.Queue queue,
                                                        java.lang.String messageSelector)
                                                 throws jakarta.jms.JMSException
        Create a queue receiver
        Specified by:
        createReceiver in interface jakarta.jms.QueueSession
        Parameters:
        queue - The queue
        messageSelector -
        Returns:
        The queue receiver
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createSender

        public jakarta.jms.QueueSender createSender​(jakarta.jms.Queue queue)
                                             throws jakarta.jms.JMSException
        Create a queue sender
        Specified by:
        createSender in interface jakarta.jms.QueueSession
        Parameters:
        queue - The queue
        Returns:
        The queue sender
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createTemporaryQueue

        public jakarta.jms.TemporaryQueue createTemporaryQueue()
                                                        throws jakarta.jms.JMSException
        Create a temporary queue
        Specified by:
        createTemporaryQueue in interface jakarta.jms.QueueSession
        Specified by:
        createTemporaryQueue in interface jakarta.jms.Session
        Returns:
        The temporary queue
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createConsumer

        public jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination)
                                                   throws jakarta.jms.JMSException
        Create a message consumer
        Specified by:
        createConsumer in interface jakarta.jms.Session
        Parameters:
        destination - The destination
        Returns:
        The message consumer
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createConsumer

        public jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination,
                                                          java.lang.String messageSelector)
                                                   throws jakarta.jms.JMSException
        Create a message consumer
        Specified by:
        createConsumer in interface jakarta.jms.Session
        Parameters:
        destination - The destination
        messageSelector - The message selector
        Returns:
        The message consumer
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createConsumer

        public jakarta.jms.MessageConsumer createConsumer​(jakarta.jms.Destination destination,
                                                          java.lang.String messageSelector,
                                                          boolean noLocal)
                                                   throws jakarta.jms.JMSException
        Create a message consumer
        Specified by:
        createConsumer in interface jakarta.jms.Session
        Parameters:
        destination - The destination
        messageSelector - The message selector
        noLocal - If true inhibits the delivery of messages published by its own connection
        Returns:
        The message consumer
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createProducer

        public jakarta.jms.MessageProducer createProducer​(jakarta.jms.Destination destination)
                                                   throws jakarta.jms.JMSException
        Create a message producer
        Specified by:
        createProducer in interface jakarta.jms.Session
        Parameters:
        destination - The destination
        Returns:
        The message producer
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getAcknowledgeMode

        public int getAcknowledgeMode()
                               throws jakarta.jms.JMSException
        Get the acknowledge mode
        Specified by:
        getAcknowledgeMode in interface jakarta.jms.Session
        Returns:
        The mode
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getXAResource

        public javax.transaction.xa.XAResource getXAResource()
        Get the XA resource
        Specified by:
        getXAResource in interface jakarta.jms.XASession
      • getNodeId

        public java.lang.String getNodeId()
                                   throws jakarta.jms.JMSException
        Returns the ID of the Node that this session is associated with.
        Returns:
        Node ID
        Throws:
        jakarta.jms.JMSException
      • getSession

        public jakarta.jms.Session getSession()
                                       throws jakarta.jms.JMSException
        Get the session
        Specified by:
        getSession in interface jakarta.jms.XASession
        Returns:
        The session
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getQueueSession

        public jakarta.jms.QueueSession getQueueSession()
                                                 throws jakarta.jms.JMSException
        Get the queue session
        Specified by:
        getQueueSession in interface jakarta.jms.XAQueueSession
        Returns:
        The queue session
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • getTopicSession

        public jakarta.jms.TopicSession getTopicSession()
                                                 throws jakarta.jms.JMSException
        Get the topic session
        Specified by:
        getTopicSession in interface jakarta.jms.XATopicSession
        Returns:
        The topic session
        Throws:
        jakarta.jms.JMSException - Thrown if an error occurs
      • createSharedConsumer

        public jakarta.jms.MessageConsumer createSharedConsumer​(jakarta.jms.Topic topic,
                                                                java.lang.String sharedSubscriptionName)
                                                         throws jakarta.jms.JMSException
        Specified by:
        createSharedConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • createSharedConsumer

        public jakarta.jms.MessageConsumer createSharedConsumer​(jakarta.jms.Topic topic,
                                                                java.lang.String sharedSubscriptionName,
                                                                java.lang.String messageSelector)
                                                         throws jakarta.jms.JMSException
        Specified by:
        createSharedConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • createDurableConsumer

        public jakarta.jms.MessageConsumer createDurableConsumer​(jakarta.jms.Topic topic,
                                                                 java.lang.String name)
                                                          throws jakarta.jms.JMSException
        Specified by:
        createDurableConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • createDurableConsumer

        public jakarta.jms.MessageConsumer createDurableConsumer​(jakarta.jms.Topic topic,
                                                                 java.lang.String name,
                                                                 java.lang.String messageSelector,
                                                                 boolean noLocal)
                                                          throws jakarta.jms.JMSException
        Specified by:
        createDurableConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • createSharedDurableConsumer

        public jakarta.jms.MessageConsumer createSharedDurableConsumer​(jakarta.jms.Topic topic,
                                                                       java.lang.String name)
                                                                throws jakarta.jms.JMSException
        Specified by:
        createSharedDurableConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • createSharedDurableConsumer

        public jakarta.jms.MessageConsumer createSharedDurableConsumer​(jakarta.jms.Topic topic,
                                                                       java.lang.String name,
                                                                       java.lang.String messageSelector)
                                                                throws jakarta.jms.JMSException
        Specified by:
        createSharedDurableConsumer in interface jakarta.jms.Session
        Throws:
        jakarta.jms.JMSException
      • getManagedConnection

        public jakarta.resource.spi.ManagedConnection getManagedConnection()
        for tests only
      • checkState

        public void checkState()
                        throws jakarta.jms.JMSException
        Throws:
        jakarta.jms.JMSException