Package org.apache.activemq.artemis.ra
Class ActiveMQRASession
- java.lang.Object
-
- org.apache.activemq.artemis.ra.ActiveMQRASession
-
- All Implemented Interfaces:
java.lang.AutoCloseable,java.lang.Runnable,javax.jms.QueueSession,javax.jms.Session,javax.jms.TopicSession,javax.jms.XAQueueSession,javax.jms.XASession,javax.jms.XATopicSession
public class ActiveMQRASession extends java.lang.Object implements javax.jms.QueueSession, javax.jms.TopicSession, javax.jms.XAQueueSession, javax.jms.XATopicSessionA 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()Commitjavax.jms.QueueBrowsercreateBrowser(javax.jms.Queue queue)Create a browserjavax.jms.QueueBrowsercreateBrowser(javax.jms.Queue queue, java.lang.String messageSelector)Create a browserjavax.jms.BytesMessagecreateBytesMessage()Create a bytes messagejavax.jms.MessageConsumercreateConsumer(javax.jms.Destination destination)Create a message consumerjavax.jms.MessageConsumercreateConsumer(javax.jms.Destination destination, java.lang.String messageSelector)Create a message consumerjavax.jms.MessageConsumercreateConsumer(javax.jms.Destination destination, java.lang.String messageSelector, boolean noLocal)Create a message consumerjavax.jms.MessageConsumercreateDurableConsumer(javax.jms.Topic topic, java.lang.String name)javax.jms.MessageConsumercreateDurableConsumer(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal)javax.jms.TopicSubscribercreateDurableSubscriber(javax.jms.Topic topic, java.lang.String name)Create a durable topic subscriberjavax.jms.TopicSubscribercreateDurableSubscriber(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal)Create a topic subscriberjavax.jms.MapMessagecreateMapMessage()Create a map messagejavax.jms.MessagecreateMessage()Create a messagejavax.jms.ObjectMessagecreateObjectMessage()Create an object messagejavax.jms.ObjectMessagecreateObjectMessage(java.io.Serializable object)Create an object messagejavax.jms.MessageProducercreateProducer(javax.jms.Destination destination)Create a message producerjavax.jms.TopicPublishercreatePublisher(javax.jms.Topic topic)Create a topic publisherjavax.jms.QueuecreateQueue(java.lang.String queueName)Create a queuejavax.jms.QueueReceivercreateReceiver(javax.jms.Queue queue)Create a queue receiverjavax.jms.QueueReceivercreateReceiver(javax.jms.Queue queue, java.lang.String messageSelector)Create a queue receiverjavax.jms.QueueSendercreateSender(javax.jms.Queue queue)Create a queue senderjavax.jms.MessageConsumercreateSharedConsumer(javax.jms.Topic topic, java.lang.String sharedSubscriptionName)javax.jms.MessageConsumercreateSharedConsumer(javax.jms.Topic topic, java.lang.String sharedSubscriptionName, java.lang.String messageSelector)javax.jms.MessageConsumercreateSharedDurableConsumer(javax.jms.Topic topic, java.lang.String name)javax.jms.MessageConsumercreateSharedDurableConsumer(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector)javax.jms.StreamMessagecreateStreamMessage()Create a stream messagejavax.jms.TopicSubscribercreateSubscriber(javax.jms.Topic topic)Create a topic subscriberjavax.jms.TopicSubscribercreateSubscriber(javax.jms.Topic topic, java.lang.String messageSelector, boolean noLocal)Create a topic subscriberjavax.jms.TemporaryQueuecreateTemporaryQueue()Create a temporary queuejavax.jms.TemporaryTopiccreateTemporaryTopic()Create a temporary topicjavax.jms.TextMessagecreateTextMessage()Create a text messagejavax.jms.TextMessagecreateTextMessage(java.lang.String string)Create a text messagejavax.jms.TopiccreateTopic(java.lang.String topicName)Create a topicintgetAcknowledgeMode()Get the acknowledge modejavax.resource.spi.ManagedConnectiongetManagedConnection()for tests onlyjavax.jms.MessageListenergetMessageListener()Get the message listener -- throws IllegalStateExceptionjava.lang.StringgetNodeId()Returns the ID of the Node that this session is associated with.javax.jms.QueueSessiongetQueueSession()Get the queue sessionjavax.jms.SessiongetSession()Get the sessionjavax.jms.TopicSessiongetTopicSession()Get the topic sessionbooleangetTransacted()Get transactedjavax.transaction.xa.XAResourcegetXAResource()Get the XA resourceprotected voidlock()Lockvoidrecover()Recovervoidrollback()Rollbackvoidrun()Always throws an Error.voidsetActiveMQSessionFactory(ActiveMQRASessionFactory sf)Set the session factoryvoidsetMessageListener(javax.jms.MessageListener listener)Set the message listener -- Throws IllegalStateExceptionprotected voidunlock()Unlockvoidunsubscribe(java.lang.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 javax.jms.JMSExceptionLock- Throws:
javax.jms.JMSException- Thrown if an error occursjavax.jms.IllegalStateException- The session is closed
-
unlock
protected void unlock()
Unlock
-
createBytesMessage
public javax.jms.BytesMessage createBytesMessage() throws javax.jms.JMSExceptionCreate a bytes message- Specified by:
createBytesMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createMapMessage
public javax.jms.MapMessage createMapMessage() throws javax.jms.JMSExceptionCreate a map message- Specified by:
createMapMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createMessage
public javax.jms.Message createMessage() throws javax.jms.JMSExceptionCreate a message- Specified by:
createMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createObjectMessage
public javax.jms.ObjectMessage createObjectMessage() throws javax.jms.JMSExceptionCreate an object message- Specified by:
createObjectMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createObjectMessage
public javax.jms.ObjectMessage createObjectMessage(java.io.Serializable object) throws javax.jms.JMSExceptionCreate an object message- Specified by:
createObjectMessagein interfacejavax.jms.Session- Parameters:
object- The object- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createStreamMessage
public javax.jms.StreamMessage createStreamMessage() throws javax.jms.JMSExceptionCreate a stream message- Specified by:
createStreamMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createTextMessage
public javax.jms.TextMessage createTextMessage() throws javax.jms.JMSExceptionCreate a text message- Specified by:
createTextMessagein interfacejavax.jms.Session- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createTextMessage
public javax.jms.TextMessage createTextMessage(java.lang.String string) throws javax.jms.JMSExceptionCreate a text message- Specified by:
createTextMessagein interfacejavax.jms.Session- Parameters:
string- The text- Returns:
- The message
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getTransacted
public boolean getTransacted() throws javax.jms.JMSExceptionGet transacted- Specified by:
getTransactedin interfacejavax.jms.Session- Specified by:
getTransactedin interfacejavax.jms.XASession- Returns:
- True if transacted; otherwise false
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getMessageListener
public javax.jms.MessageListener getMessageListener() throws javax.jms.JMSExceptionGet the message listener -- throws IllegalStateException- Specified by:
getMessageListenerin interfacejavax.jms.Session- Returns:
- The message listener
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
setMessageListener
public void setMessageListener(javax.jms.MessageListener listener) throws javax.jms.JMSExceptionSet the message listener -- Throws IllegalStateException- Specified by:
setMessageListenerin interfacejavax.jms.Session- Parameters:
listener- The message listener- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
run
public void run()
Always throws an Error.- Specified by:
runin interfacejava.lang.Runnable- Specified by:
runin interfacejavax.jms.Session- Throws:
java.lang.Error- Method not allowed.
-
close
public void close() throws javax.jms.JMSExceptionCloses the session. Sends a ConnectionEvent.CONNECTION_CLOSED to the managed connection.- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejavax.jms.Session- Throws:
javax.jms.JMSException- Failed to close session.
-
commit
public void commit() throws javax.jms.JMSExceptionCommit- Specified by:
commitin interfacejavax.jms.Session- Specified by:
commitin interfacejavax.jms.XASession- Throws:
javax.jms.JMSException- Failed to close session.
-
rollback
public void rollback() throws javax.jms.JMSExceptionRollback- Specified by:
rollbackin interfacejavax.jms.Session- Specified by:
rollbackin interfacejavax.jms.XASession- Throws:
javax.jms.JMSException- Failed to close session.
-
recover
public void recover() throws javax.jms.JMSExceptionRecover- Specified by:
recoverin interfacejavax.jms.Session- Throws:
javax.jms.JMSException- Failed to close session.
-
createTopic
public javax.jms.Topic createTopic(java.lang.String topicName) throws javax.jms.JMSExceptionCreate a topic- Specified by:
createTopicin interfacejavax.jms.Session- Specified by:
createTopicin interfacejavax.jms.TopicSession- Parameters:
topicName- The topic name- Returns:
- The topic
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createSubscriber
public javax.jms.TopicSubscriber createSubscriber(javax.jms.Topic topic) throws javax.jms.JMSExceptionCreate a topic subscriber- Specified by:
createSubscriberin interfacejavax.jms.TopicSession- Parameters:
topic- The topic- Returns:
- The subscriber
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createSubscriber
public javax.jms.TopicSubscriber createSubscriber(javax.jms.Topic topic, java.lang.String messageSelector, boolean noLocal) throws javax.jms.JMSExceptionCreate a topic subscriber- Specified by:
createSubscriberin interfacejavax.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:
javax.jms.JMSException- Thrown if an error occurs
-
createDurableSubscriber
public javax.jms.TopicSubscriber createDurableSubscriber(javax.jms.Topic topic, java.lang.String name) throws javax.jms.JMSExceptionCreate a durable topic subscriber- Specified by:
createDurableSubscriberin interfacejavax.jms.Session- Specified by:
createDurableSubscriberin interfacejavax.jms.TopicSession- Parameters:
topic- The topicname- The name- Returns:
- The subscriber
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createDurableSubscriber
public javax.jms.TopicSubscriber createDurableSubscriber(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal) throws javax.jms.JMSExceptionCreate a topic subscriber- Specified by:
createDurableSubscriberin interfacejavax.jms.Session- Specified by:
createDurableSubscriberin interfacejavax.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:
javax.jms.JMSException- Thrown if an error occurs
-
createPublisher
public javax.jms.TopicPublisher createPublisher(javax.jms.Topic topic) throws javax.jms.JMSExceptionCreate a topic publisher- Specified by:
createPublisherin interfacejavax.jms.TopicSession- Parameters:
topic- The topic- Returns:
- The publisher
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createTemporaryTopic
public javax.jms.TemporaryTopic createTemporaryTopic() throws javax.jms.JMSExceptionCreate a temporary topic- Specified by:
createTemporaryTopicin interfacejavax.jms.Session- Specified by:
createTemporaryTopicin interfacejavax.jms.TopicSession- Returns:
- The temporary topic
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
unsubscribe
public void unsubscribe(java.lang.String name) throws javax.jms.JMSExceptionUnsubscribe- Specified by:
unsubscribein interfacejavax.jms.Session- Specified by:
unsubscribein interfacejavax.jms.TopicSession- Parameters:
name- The name- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createBrowser
public javax.jms.QueueBrowser createBrowser(javax.jms.Queue queue) throws javax.jms.JMSExceptionCreate a browser- Specified by:
createBrowserin interfacejavax.jms.QueueSession- Specified by:
createBrowserin interfacejavax.jms.Session- Parameters:
queue- The queue- Returns:
- The browser
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createBrowser
public javax.jms.QueueBrowser createBrowser(javax.jms.Queue queue, java.lang.String messageSelector) throws javax.jms.JMSExceptionCreate a browser- Specified by:
createBrowserin interfacejavax.jms.QueueSession- Specified by:
createBrowserin interfacejavax.jms.Session- Parameters:
queue- The queuemessageSelector- The message selector- Returns:
- The browser
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createQueue
public javax.jms.Queue createQueue(java.lang.String queueName) throws javax.jms.JMSExceptionCreate a queue- Specified by:
createQueuein interfacejavax.jms.QueueSession- Specified by:
createQueuein interfacejavax.jms.Session- Parameters:
queueName- The queue name- Returns:
- The queue
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createReceiver
public javax.jms.QueueReceiver createReceiver(javax.jms.Queue queue) throws javax.jms.JMSExceptionCreate a queue receiver- Specified by:
createReceiverin interfacejavax.jms.QueueSession- Parameters:
queue- The queue- Returns:
- The queue receiver
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createReceiver
public javax.jms.QueueReceiver createReceiver(javax.jms.Queue queue, java.lang.String messageSelector) throws javax.jms.JMSExceptionCreate a queue receiver- Specified by:
createReceiverin interfacejavax.jms.QueueSession- Parameters:
queue- The queuemessageSelector-- Returns:
- The queue receiver
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createSender
public javax.jms.QueueSender createSender(javax.jms.Queue queue) throws javax.jms.JMSExceptionCreate a queue sender- Specified by:
createSenderin interfacejavax.jms.QueueSession- Parameters:
queue- The queue- Returns:
- The queue sender
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createTemporaryQueue
public javax.jms.TemporaryQueue createTemporaryQueue() throws javax.jms.JMSExceptionCreate a temporary queue- Specified by:
createTemporaryQueuein interfacejavax.jms.QueueSession- Specified by:
createTemporaryQueuein interfacejavax.jms.Session- Returns:
- The temporary queue
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createConsumer
public javax.jms.MessageConsumer createConsumer(javax.jms.Destination destination) throws javax.jms.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejavax.jms.Session- Parameters:
destination- The destination- Returns:
- The message consumer
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createConsumer
public javax.jms.MessageConsumer createConsumer(javax.jms.Destination destination, java.lang.String messageSelector) throws javax.jms.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejavax.jms.Session- Parameters:
destination- The destinationmessageSelector- The message selector- Returns:
- The message consumer
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createConsumer
public javax.jms.MessageConsumer createConsumer(javax.jms.Destination destination, java.lang.String messageSelector, boolean noLocal) throws javax.jms.JMSExceptionCreate a message consumer- Specified by:
createConsumerin interfacejavax.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:
javax.jms.JMSException- Thrown if an error occurs
-
createProducer
public javax.jms.MessageProducer createProducer(javax.jms.Destination destination) throws javax.jms.JMSExceptionCreate a message producer- Specified by:
createProducerin interfacejavax.jms.Session- Parameters:
destination- The destination- Returns:
- The message producer
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getAcknowledgeMode
public int getAcknowledgeMode() throws javax.jms.JMSExceptionGet the acknowledge mode- Specified by:
getAcknowledgeModein interfacejavax.jms.Session- Returns:
- The mode
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getXAResource
public javax.transaction.xa.XAResource getXAResource()
Get the XA resource- Specified by:
getXAResourcein interfacejavax.jms.XASession
-
getNodeId
public java.lang.String getNodeId() throws javax.jms.JMSExceptionReturns the ID of the Node that this session is associated with.- Returns:
- Node ID
- Throws:
javax.jms.JMSException
-
getSession
public javax.jms.Session getSession() throws javax.jms.JMSExceptionGet the session- Specified by:
getSessionin interfacejavax.jms.XASession- Returns:
- The session
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getQueueSession
public javax.jms.QueueSession getQueueSession() throws javax.jms.JMSExceptionGet the queue session- Specified by:
getQueueSessionin interfacejavax.jms.XAQueueSession- Returns:
- The queue session
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
getTopicSession
public javax.jms.TopicSession getTopicSession() throws javax.jms.JMSExceptionGet the topic session- Specified by:
getTopicSessionin interfacejavax.jms.XATopicSession- Returns:
- The topic session
- Throws:
javax.jms.JMSException- Thrown if an error occurs
-
createSharedConsumer
public javax.jms.MessageConsumer createSharedConsumer(javax.jms.Topic topic, java.lang.String sharedSubscriptionName) throws javax.jms.JMSException- Specified by:
createSharedConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
createSharedConsumer
public javax.jms.MessageConsumer createSharedConsumer(javax.jms.Topic topic, java.lang.String sharedSubscriptionName, java.lang.String messageSelector) throws javax.jms.JMSException- Specified by:
createSharedConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
createDurableConsumer
public javax.jms.MessageConsumer createDurableConsumer(javax.jms.Topic topic, java.lang.String name) throws javax.jms.JMSException- Specified by:
createDurableConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
createDurableConsumer
public javax.jms.MessageConsumer createDurableConsumer(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector, boolean noLocal) throws javax.jms.JMSException- Specified by:
createDurableConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
createSharedDurableConsumer
public javax.jms.MessageConsumer createSharedDurableConsumer(javax.jms.Topic topic, java.lang.String name) throws javax.jms.JMSException- Specified by:
createSharedDurableConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
createSharedDurableConsumer
public javax.jms.MessageConsumer createSharedDurableConsumer(javax.jms.Topic topic, java.lang.String name, java.lang.String messageSelector) throws javax.jms.JMSException- Specified by:
createSharedDurableConsumerin interfacejavax.jms.Session- Throws:
javax.jms.JMSException
-
getManagedConnection
public javax.resource.spi.ManagedConnection getManagedConnection()
for tests only
-
checkState
public void checkState() throws javax.jms.JMSException- Throws:
javax.jms.JMSException
-
-