Package org.messaginghub.pooled.jms
Class JmsPoolSession
java.lang.Object
org.messaginghub.pooled.jms.JmsPoolSession
- All Implemented Interfaces:
jakarta.jms.QueueSession,jakarta.jms.Session,jakarta.jms.TopicSession,jakarta.jms.XASession,AutoCloseable,Runnable
public class JmsPoolSession
extends Object
implements jakarta.jms.Session, jakarta.jms.TopicSession, jakarta.jms.QueueSession, jakarta.jms.XASession, AutoCloseable
-
Field Summary
Fields inherited from interface jakarta.jms.Session
AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE, SESSION_TRANSACTED -
Constructor Summary
ConstructorsConstructorDescriptionJmsPoolSession(PooledSessionKey key, PooledSessionHolder sessionHolder, org.apache.commons.pool2.KeyedObjectPool<PooledSessionKey, PooledSessionHolder> sessionPool, boolean transactional) -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidcheckClientJMSVersionSupport(int major, int minor) voidclose()voidcommit()jakarta.jms.QueueBrowsercreateBrowser(jakarta.jms.Queue queue) jakarta.jms.QueueBrowsercreateBrowser(jakarta.jms.Queue queue, String selector) jakarta.jms.BytesMessagejakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination) jakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination, String selector) jakarta.jms.MessageConsumercreateConsumer(jakarta.jms.Destination destination, String selector, boolean noLocal) jakarta.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 selector) jakarta.jms.TopicSubscribercreateDurableSubscriber(jakarta.jms.Topic topic, String name, String selector, boolean noLocal) jakarta.jms.MapMessagejakarta.jms.Messagejakarta.jms.ObjectMessagejakarta.jms.ObjectMessagecreateObjectMessage(Serializable serializable) jakarta.jms.MessageProducercreateProducer(jakarta.jms.Destination destination) jakarta.jms.TopicPublishercreatePublisher(jakarta.jms.Topic topic) jakarta.jms.Queuejakarta.jms.QueueReceivercreateReceiver(jakarta.jms.Queue queue) jakarta.jms.QueueReceivercreateReceiver(jakarta.jms.Queue queue, String selector) jakarta.jms.QueueSendercreateSender(jakarta.jms.Queue queue) jakarta.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.StreamMessagejakarta.jms.TopicSubscribercreateSubscriber(jakarta.jms.Topic topic) jakarta.jms.TopicSubscribercreateSubscriber(jakarta.jms.Topic topic, String selector, boolean local) jakarta.jms.TemporaryQueuejakarta.jms.TemporaryTopicjakarta.jms.TextMessagejakarta.jms.TextMessagejakarta.jms.Topicintjakarta.jms.Sessionjakarta.jms.MessageListenerjakarta.jms.Sessionbooleanbooleanprotected booleanisJMSVersionSupported(int major, int minor) protected voidonConsumerClose(JmsPoolMessageConsumer consumer) Callback invoked when the consumer is closed.protected voidonMessageProducerClosed(JmsPoolMessageProducer producer, boolean force) Callback invoked when the producer is closed.protected voidonQueueBrowserClose(JmsPoolQueueBrowser browser) Callback invoked when the consumer is closed.voidrecover()voidrollback()voidrun()voidsetIgnoreClose(boolean ignoreClose) voidsetIsXa(boolean isXa) voidsetMessageListener(jakarta.jms.MessageListener messageListener) toString()void
-
Constructor Details
-
JmsPoolSession
public JmsPoolSession(PooledSessionKey key, PooledSessionHolder sessionHolder, org.apache.commons.pool2.KeyedObjectPool<PooledSessionKey, PooledSessionHolder> sessionPool, boolean transactional)
-
-
Method Details
-
close
public void close() throws jakarta.jms.JMSException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createTemporaryQueue
public jakarta.jms.TemporaryQueue createTemporaryQueue() throws jakarta.jms.JMSException- Specified by:
createTemporaryQueuein interfacejakarta.jms.QueueSession- Specified by:
createTemporaryQueuein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createTemporaryTopic
public jakarta.jms.TemporaryTopic createTemporaryTopic() throws jakarta.jms.JMSException- Specified by:
createTemporaryTopicin interfacejakarta.jms.Session- Specified by:
createTemporaryTopicin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createQueue
- Specified by:
createQueuein interfacejakarta.jms.QueueSession- Specified by:
createQueuein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createTopic
- Specified by:
createTopicin interfacejakarta.jms.Session- Specified by:
createTopicin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createBytesMessage
public jakarta.jms.BytesMessage createBytesMessage() throws jakarta.jms.JMSException- Specified by:
createBytesMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createMapMessage
public jakarta.jms.MapMessage createMapMessage() throws jakarta.jms.JMSException- Specified by:
createMapMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createMessage
public jakarta.jms.Message createMessage() throws jakarta.jms.JMSException- Specified by:
createMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createObjectMessage
public jakarta.jms.ObjectMessage createObjectMessage() throws jakarta.jms.JMSException- Specified by:
createObjectMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createObjectMessage
public jakarta.jms.ObjectMessage createObjectMessage(Serializable serializable) throws jakarta.jms.JMSException - Specified by:
createObjectMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createStreamMessage
public jakarta.jms.StreamMessage createStreamMessage() throws jakarta.jms.JMSException- Specified by:
createStreamMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createTextMessage
public jakarta.jms.TextMessage createTextMessage() throws jakarta.jms.JMSException- Specified by:
createTextMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createTextMessage
- Specified by:
createTextMessagein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
unsubscribe
- Specified by:
unsubscribein interfacejakarta.jms.Session- Specified by:
unsubscribein interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
getAcknowledgeMode
public int getAcknowledgeMode() throws jakarta.jms.JMSException- Specified by:
getAcknowledgeModein interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
getTransacted
public boolean getTransacted() throws jakarta.jms.JMSException- Specified by:
getTransactedin interfacejakarta.jms.Session- Specified by:
getTransactedin interfacejakarta.jms.XASession- Throws:
jakarta.jms.JMSException
-
recover
public void recover() throws jakarta.jms.JMSException- Specified by:
recoverin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
commit
public void commit() throws jakarta.jms.JMSException- Specified by:
commitin interfacejakarta.jms.Session- Specified by:
commitin interfacejakarta.jms.XASession- Throws:
jakarta.jms.JMSException
-
rollback
public void rollback() throws jakarta.jms.JMSException- Specified by:
rollbackin interfacejakarta.jms.Session- Specified by:
rollbackin interfacejakarta.jms.XASession- Throws:
jakarta.jms.JMSException
-
getXAResource
- Specified by:
getXAResourcein interfacejakarta.jms.XASession
-
getSession
public jakarta.jms.Session getSession()- Specified by:
getSessionin interfacejakarta.jms.XASession
-
getMessageListener
public jakarta.jms.MessageListener getMessageListener() throws jakarta.jms.JMSException- Specified by:
getMessageListenerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
setMessageListener
public void setMessageListener(jakarta.jms.MessageListener messageListener) throws jakarta.jms.JMSException - Specified by:
setMessageListenerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
run
public void run() -
createBrowser
public jakarta.jms.QueueBrowser createBrowser(jakarta.jms.Queue queue) throws jakarta.jms.JMSException - Specified by:
createBrowserin interfacejakarta.jms.QueueSession- Specified by:
createBrowserin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createBrowser
public jakarta.jms.QueueBrowser createBrowser(jakarta.jms.Queue queue, String selector) throws jakarta.jms.JMSException - Specified by:
createBrowserin interfacejakarta.jms.QueueSession- Specified by:
createBrowserin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createConsumer
public jakarta.jms.MessageConsumer createConsumer(jakarta.jms.Destination destination) throws jakarta.jms.JMSException - Specified by:
createConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createConsumer
public jakarta.jms.MessageConsumer createConsumer(jakarta.jms.Destination destination, String selector) throws jakarta.jms.JMSException - Specified by:
createConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createConsumer
public jakarta.jms.MessageConsumer createConsumer(jakarta.jms.Destination destination, String selector, boolean noLocal) throws jakarta.jms.JMSException - Specified by:
createConsumerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createDurableSubscriber
public jakarta.jms.TopicSubscriber createDurableSubscriber(jakarta.jms.Topic topic, String selector) throws jakarta.jms.JMSException - Specified by:
createDurableSubscriberin interfacejakarta.jms.Session- Specified by:
createDurableSubscriberin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createDurableSubscriber
public jakarta.jms.TopicSubscriber createDurableSubscriber(jakarta.jms.Topic topic, String name, String selector, boolean noLocal) throws jakarta.jms.JMSException - Specified by:
createDurableSubscriberin interfacejakarta.jms.Session- Specified by:
createDurableSubscriberin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createSubscriber
public jakarta.jms.TopicSubscriber createSubscriber(jakarta.jms.Topic topic) throws jakarta.jms.JMSException - Specified by:
createSubscriberin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createSubscriber
public jakarta.jms.TopicSubscriber createSubscriber(jakarta.jms.Topic topic, String selector, boolean local) throws jakarta.jms.JMSException - Specified by:
createSubscriberin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
createReceiver
public jakarta.jms.QueueReceiver createReceiver(jakarta.jms.Queue queue) throws jakarta.jms.JMSException - Specified by:
createReceiverin interfacejakarta.jms.QueueSession- Throws:
jakarta.jms.JMSException
-
createReceiver
public jakarta.jms.QueueReceiver createReceiver(jakarta.jms.Queue queue, String selector) throws jakarta.jms.JMSException - Specified by:
createReceiverin interfacejakarta.jms.QueueSession- 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
-
createProducer
public jakarta.jms.MessageProducer createProducer(jakarta.jms.Destination destination) throws jakarta.jms.JMSException - Specified by:
createProducerin interfacejakarta.jms.Session- Throws:
jakarta.jms.JMSException
-
createSender
public jakarta.jms.QueueSender createSender(jakarta.jms.Queue queue) throws jakarta.jms.JMSException - Specified by:
createSenderin interfacejakarta.jms.QueueSession- Throws:
jakarta.jms.JMSException
-
createPublisher
public jakarta.jms.TopicPublisher createPublisher(jakarta.jms.Topic topic) throws jakarta.jms.JMSException - Specified by:
createPublisherin interfacejakarta.jms.TopicSession- Throws:
jakarta.jms.JMSException
-
addSessionEventListener
public void addSessionEventListener(JmsPoolSessionEventListener listener) throws jakarta.jms.JMSException - Throws:
jakarta.jms.JMSException
-
getInternalSession
public jakarta.jms.Session getInternalSession() throws jakarta.jms.JMSException- Throws:
jakarta.jms.JMSException
-
setIsXa
public void setIsXa(boolean isXa) -
isIgnoreClose
public boolean isIgnoreClose() -
setIgnoreClose
public void setIgnoreClose(boolean ignoreClose) -
toString
-
onConsumerClose
Callback invoked when the consumer is closed.This is used to keep track of an explicit closed consumer created by this session so that the internal tracking data structures can be cleaned up.
- Parameters:
consumer- the consumer which is being closed.
-
onQueueBrowserClose
Callback invoked when the consumer is closed.This is used to keep track of an explicit closed browser created by this session so that the internal tracking data structures can be cleaned up.
- Parameters:
browser- the browser which is being closed.
-
onMessageProducerClosed
protected void onMessageProducerClosed(JmsPoolMessageProducer producer, boolean force) throws jakarta.jms.JMSException Callback invoked when the producer is closed.This is used to keep track of an explicit closed producer created by this session so that the internal tracking data structures can be cleaned up.
- Parameters:
producer- the producer which is being closed.force- should the producer be closed regardless of other configuration- Throws:
jakarta.jms.JMSException- if an error occurs while closing the provider MessageProducer.
-
checkClientJMSVersionSupport
protected void checkClientJMSVersionSupport(int major, int minor) throws jakarta.jms.JMSException - Throws:
jakarta.jms.JMSException
-
isJMSVersionSupported
protected boolean isJMSVersionSupported(int major, int minor) throws jakarta.jms.JMSException - Throws:
jakarta.jms.JMSException
-