Package org.apache.activemq.artemis.ra
Class ActiveMQRASession
- java.lang.Object
-
- org.apache.activemq.artemis.ra.ActiveMQRASession
-
- All Implemented Interfaces:
jakarta.jms.QueueSession,jakarta.jms.Session,jakarta.jms.TopicSession,jakarta.jms.XAQueueSession,jakarta.jms.XASession,jakarta.jms.XATopicSession,AutoCloseable,Runnable
public class ActiveMQRASession extends Object implements jakarta.jms.QueueSession, jakarta.jms.TopicSession, jakarta.jms.XAQueueSession, jakarta.jms.XATopicSession
A joint interface for JMS sessions
-
-
Constructor Summary
Constructors Constructor Description ActiveMQRASession(ActiveMQRAManagedConnection mc, ActiveMQRAConnectionRequestInfo cri)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckState()voidclose()Closes the session.voidcommit()Commitjakarta.jms.QueueBrowsercreateBrowser(jakarta.jms.Queue queue)Create a browserjakarta.jms.QueueBrowsercreateBrowser(jakarta.jms.Queue queue, String messageSelector)Create a browserjakarta.jms.BytesMessagecreateBytesMessage()Create a bytes messagejakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination)Create a message consumerjakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination, String messageSelector)Create a message consumerjakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination, String messageSelector, boolean noLocal)Create a message consumerjakarta.jms.MessageConsumercreateDurableConsumer(jakarta.jms.Topic topic, String name)jakarta.jms.MessageConsumercreateDurableConsumer(jakarta.jms.Topic topic, String name, String messageSelector, boolean noLocal)jakarta.jms.TopicSubscribercreateDurableSubscriber(jakarta.jms.Topic topic, String name)Create a durable topic subscriberjakarta.jms.TopicSubscribercreateDurableSubscriber(jakarta.jms.Topic topic, String name, String messageSelector, boolean noLocal)Create a topic subscriberjakarta.jms.MapMessagecreateMapMessage()Create a map messagejakarta.jms.MessagecreateMessage()Create a messagejakarta.jms.ObjectMessagecreateObjectMessage()Create an object messagejakarta.jms.ObjectMessagecreateObjectMessage(Serializable object)Create an object messagejakarta.jms.MessageProducercreateProducer(jakarta.jms.Destination destination)Create a message producerjakarta.jms.TopicPublishercreatePublisher(jakarta.jms.Topic topic)Create a topic publisherjakarta.jms.QueuecreateQueue(String queueName)Create a queuejakarta.jms.QueueReceivercreateReceiver(jakarta.jms.Queue queue)Create a queue receiverjakarta.jms.QueueReceivercreateReceiver(jakarta.jms.Queue queue, String messageSelector)Create a queue receiverjakarta.jms.QueueSendercreateSender(jakarta.jms.Queue queue)Create a queue senderjakarta.jms.MessageConsumercreateSharedConsumer(jakarta.jms.Topic topic, String sharedSubscriptionName)jakarta.jms.MessageConsumercreateSharedConsumer(jakarta.jms.Topic topic, String sharedSubscriptionName, String messageSelector)jakarta.jms.MessageConsumercreateSharedDurableConsumer(jakarta.jms.Topic topic, String name)jakarta.jms.MessageConsumercreateSharedDurableConsumer(jakarta.jms.Topic topic, String name, String messageSelector)jakarta.jms.StreamMessagecreateStreamMessage()Create a stream messagejakarta.jms.TopicSubscribercreateSubscriber(jakarta.jms.Topic topic)Create a topic subscriberjakarta.jms.TopicSubscribercreateSubscriber(jakarta.jms.Topic topic, String messageSelector, boolean noLocal)Create a topic subscriberjakarta.jms.TemporaryQueuecreateTemporaryQueue()Create a temporary queuejakarta.jms.TemporaryTopiccreateTemporaryTopic()Create a temporary topicjakarta.jms.TextMessagecreateTextMessage()Create a text messagejakarta.jms.TextMessagecreateTextMessage(String string)Create a text messagejakarta.jms.TopiccreateTopic(String topicName)Create a topicintgetAcknowledgeMode()Get the acknowledge modejakarta.resource.spi.ManagedConnectiongetManagedConnection()for tests onlyjakarta.jms.MessageListenergetMessageListener()Get the message listener -- throws IllegalStateExceptionStringgetNodeId()Returns the ID of the Node that this session is associated with.jakarta.jms.QueueSessiongetQueueSession()Get the queue sessionjakarta.jms.SessiongetSession()Get the sessionjakarta.jms.TopicSessiongetTopicSession()Get the topic sessionbooleangetTransacted()Get transactedXAResourcegetXAResource()Get the XA resourceprotected voidlock()Lockvoidrecover()Recovervoidrollback()Rollbackvoidrun()Always throws an Error.voidsetActiveMQSessionFactory(ActiveMQRASessionFactory sf)Set the session factoryvoidsetMessageListener(jakarta.jms.MessageListener listener)Set the message listener -- Throws IllegalStateExceptionprotected voidunlock()Unlockvoidunsubscribe(String name)Unsubscribe
-
-
-
Constructor Detail
-
ActiveMQRASession
public ActiveMQRASession(ActiveMQRAManagedConnection mc, ActiveMQRAConnectionRequestInfo cri)
Constructor- Parameters:
mc- The managed connectioncri- The connection request info
-
-
Method Detail
-
setActiveMQSessionFactory
public void setActiveMQSessionFactory(ActiveMQRASessionFactory sf)
Set the session factory- Parameters:
sf- The session factory
-
lock
protected void lock() throws jakarta.jms.JMSExceptionLock- Throws:
jakarta.jms.JMSException- Thrown if an error occursjakarta.jms.IllegalStateException- The session is closed
-
unlock
protected void unlock()
Unlock
-
createBytesMessage
public jakarta.jms.BytesMessage createBytesMessage() throws jakarta.jms.JMSExceptionCreate a bytes message- Specified by:
createBytesMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createMapMessage
public jakarta.jms.MapMessage createMapMessage() throws jakarta.jms.JMSExceptionCreate a map message- Specified by:
createMapMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createMessage
public jakarta.jms.Message createMessage() throws jakarta.jms.JMSExceptionCreate a message- Specified by:
createMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createObjectMessage
public jakarta.jms.ObjectMessage createObjectMessage() throws jakarta.jms.JMSExceptionCreate an object message- Specified by:
createObjectMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createObjectMessage
public jakarta.jms.ObjectMessage createObjectMessage(Serializable object) throws jakarta.jms.JMSException
Create an object message- Specified by:
createObjectMessagein interfacejakarta.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.JMSExceptionCreate a stream message- Specified by:
createStreamMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createTextMessage
public jakarta.jms.TextMessage createTextMessage() throws jakarta.jms.JMSExceptionCreate a text message- Specified by:
createTextMessagein interfacejakarta.jms.Session- Returns:
- The message
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createTextMessage
public jakarta.jms.TextMessage createTextMessage(String string) throws jakarta.jms.JMSException
Create a text message- Specified by:
createTextMessagein interfacejakarta.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.JMSExceptionGet transacted- Specified by:
getTransactedin interfacejakarta.jms.Session- Specified by:
getTransactedin interfacejakarta.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.JMSExceptionGet the message listener -- throws IllegalStateException- Specified by:
getMessageListenerin interfacejakarta.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.JMSExceptionSet the message listener -- Throws IllegalStateException- Specified by:
setMessageListenerin interfacejakarta.jms.Session- Parameters:
listener- The message listener- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
run
public void run()
Always throws an Error.
-
close
public void close() throws jakarta.jms.JMSExceptionCloses the session. Sends a ConnectionEvent.CONNECTION_CLOSED to the managed connection.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException- Failed to close session.
-
commit
public void commit() throws jakarta.jms.JMSExceptionCommit- Specified by:
commitin interfacejakarta.jms.Session- Specified by:
commitin interfacejakarta.jms.XASession- Throws:
jakarta.jms.JMSException- Failed to close session.
-
rollback
public void rollback() throws jakarta.jms.JMSExceptionRollback- Specified by:
rollbackin interfacejakarta.jms.Session- Specified by:
rollbackin interfacejakarta.jms.XASession- Throws:
jakarta.jms.JMSException- Failed to close session.
-
recover
public void recover() throws jakarta.jms.JMSExceptionRecover- Specified by:
recoverin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException- Failed to close session.
-
createTopic
public jakarta.jms.Topic createTopic(String topicName) throws jakarta.jms.JMSException
Create a topic- Specified by:
createTopicin interfacejakarta.jms.Session- Specified by:
createTopicin interfacejakarta.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.JMSExceptionCreate a topic subscriber- Specified by:
createSubscriberin interfacejakarta.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, String messageSelector, boolean noLocal) throws jakarta.jms.JMSExceptionCreate a topic subscriber- Specified by:
createSubscriberin interfacejakarta.jms.TopicSession- Parameters:
topic- The topicmessageSelector- The message selectornoLocal- 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, String name) throws jakarta.jms.JMSExceptionCreate a durable topic subscriber- Specified by:
createDurableSubscriberin interfacejakarta.jms.Session- Specified by:
createDurableSubscriberin interfacejakarta.jms.TopicSession- Parameters:
topic- The topicname- The name- Returns:
- The subscriber
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createDurableSubscriber
public jakarta.jms.TopicSubscriber createDurableSubscriber(jakarta.jms.Topic topic, String name, String messageSelector, boolean noLocal) throws jakarta.jms.JMSExceptionCreate a topic subscriber- Specified by:
createDurableSubscriberin interfacejakarta.jms.Session- Specified by:
createDurableSubscriberin interfacejakarta.jms.TopicSession- Parameters:
topic- The topicname- The namemessageSelector- The message selectornoLocal- 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.JMSExceptionCreate a topic publisher- Specified by:
createPublisherin interfacejakarta.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.JMSExceptionCreate a temporary topic- Specified by:
createTemporaryTopicin interfacejakarta.jms.Session- Specified by:
createTemporaryTopicin interfacejakarta.jms.TopicSession- Returns:
- The temporary topic
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
unsubscribe
public void unsubscribe(String name) throws jakarta.jms.JMSException
Unsubscribe- Specified by:
unsubscribein interfacejakarta.jms.Session- Specified by:
unsubscribein interfacejakarta.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.JMSExceptionCreate a browser- Specified by:
createBrowserin interfacejakarta.jms.QueueSession- Specified by:
createBrowserin interfacejakarta.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, String messageSelector) throws jakarta.jms.JMSExceptionCreate a browser- Specified by:
createBrowserin interfacejakarta.jms.QueueSession- Specified by:
createBrowserin interfacejakarta.jms.Session- Parameters:
queue- The queuemessageSelector- The message selector- Returns:
- The browser
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
createQueue
public jakarta.jms.Queue createQueue(String queueName) throws jakarta.jms.JMSException
Create a queue- Specified by:
createQueuein interfacejakarta.jms.QueueSession- Specified by:
createQueuein interfacejakarta.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.JMSExceptionCreate a queue receiver- Specified by:
createReceiverin interfacejakarta.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, String messageSelector) throws jakarta.jms.JMSExceptionCreate a queue receiver- Specified by:
createReceiverin interfacejakarta.jms.QueueSession- Parameters:
queue- The queuemessageSelector-- 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.JMSExceptionCreate a queue sender- Specified by:
createSenderin interfacejakarta.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.JMSExceptionCreate a temporary queue- Specified by:
createTemporaryQueuein interfacejakarta.jms.QueueSession- Specified by:
createTemporaryQueuein interfacejakarta.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.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejakarta.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, String messageSelector) throws jakarta.jms.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejakarta.jms.Session- Parameters:
destination- The destinationmessageSelector- 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, String messageSelector, boolean noLocal) throws jakarta.jms.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejakarta.jms.Session- Parameters:
destination- The destinationmessageSelector- The message selectornoLocal- 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.JMSExceptionCreate a message producer- Specified by:
createProducerin interfacejakarta.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.JMSExceptionGet the acknowledge mode- Specified by:
getAcknowledgeModein interfacejakarta.jms.Session- Returns:
- The mode
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
getXAResource
public XAResource getXAResource()
Get the XA resource- Specified by:
getXAResourcein interfacejakarta.jms.XASession
-
getNodeId
public 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.JMSExceptionGet the session- Specified by:
getSessionin interfacejakarta.jms.XASession- Returns:
- The session
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
getQueueSession
public jakarta.jms.QueueSession getQueueSession() throws jakarta.jms.JMSExceptionGet the queue session- Specified by:
getQueueSessionin interfacejakarta.jms.XAQueueSession- Returns:
- The queue session
- Throws:
jakarta.jms.JMSException- Thrown if an error occurs
-
getTopicSession
public jakarta.jms.TopicSession getTopicSession() throws jakarta.jms.JMSExceptionGet the topic session- Specified by:
getTopicSessionin interfacejakarta.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, String sharedSubscriptionName) throws jakarta.jms.JMSException- Specified by:
createSharedConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createSharedConsumer
public jakarta.jms.MessageConsumer createSharedConsumer(jakarta.jms.Topic topic, String sharedSubscriptionName, String messageSelector) throws jakarta.jms.JMSException- Specified by:
createSharedConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createDurableConsumer
public jakarta.jms.MessageConsumer createDurableConsumer(jakarta.jms.Topic topic, String name) throws jakarta.jms.JMSException- Specified by:
createDurableConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createDurableConsumer
public jakarta.jms.MessageConsumer createDurableConsumer(jakarta.jms.Topic topic, String name, String messageSelector, boolean noLocal) throws jakarta.jms.JMSException- Specified by:
createDurableConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createSharedDurableConsumer
public jakarta.jms.MessageConsumer createSharedDurableConsumer(jakarta.jms.Topic topic, String name) throws jakarta.jms.JMSException- Specified by:
createSharedDurableConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createSharedDurableConsumer
public jakarta.jms.MessageConsumer createSharedDurableConsumer(jakarta.jms.Topic topic, String name, String messageSelector) throws jakarta.jms.JMSException- Specified by:
createSharedDurableConsumerin interfacejakarta.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
-
-