public class ThreadAwareContext extends Object
| Constructor and Description |
|---|
ThreadAwareContext() |
| Modifier and Type | Method and Description |
|---|---|
void |
assertNotCompletionListenerThread()
Asserts a
CompletionListener is not calling from its own Connection or from
a MessageProducer . |
void |
assertNotCompletionListenerThreadRuntime()
Asserts a
CompletionListener is not calling from its own JMSContext. |
void |
assertNotMessageListenerThread()
Asserts a
MessageListener is not calling from its own Connection or
MessageConsumer. |
void |
assertNotMessageListenerThreadRuntime()
Asserts a
MessageListener is not calling from its own JMSContext. |
void |
clearCurrentThread(boolean isCompletionListener)
Clear current thread from the context
|
void |
setCurrentThread(boolean isCompletionListener)
Sets current thread to the context
|
public void setCurrentThread(boolean isCompletionListener)
Meant to inform an JMSContext which is the thread that CANNOT call some of its methods.
isCompletionListener - : indicating whether current thread is from CompletionListener
or from MessageListener.public void clearCurrentThread(boolean isCompletionListener)
isCompletionListener - : indicating whether current thread is from CompletionListener
or from MessageListener.public void assertNotCompletionListenerThreadRuntime()
CompletionListener is not calling from its own JMSContext.
Note that the code must work without any need for further synchronization, as there is the requirement that only one CompletionListener be called at a time. In other words, CompletionListener calling is single-threaded.
JMSContext.close(),
JMSContext.stop(),
JMSContext.commit(),
JMSContext.rollback()public void assertNotCompletionListenerThread()
throws javax.jms.IllegalStateException
CompletionListener is not calling from its own Connection or from
a MessageProducer .
Note that the code must work without any need for further synchronization, as there is the requirement that only one CompletionListener be called at a time. In other words, CompletionListener calling is single-threaded.
javax.jms.IllegalStateExceptionConnection.close(),
MessageProducer.close()public void assertNotMessageListenerThreadRuntime()
MessageListener is not calling from its own JMSContext.
Note that the code must work without any need for further synchronization, as there is the requirement that only one MessageListener be called at a time. In other words, MessageListener calling is single-threaded.
JMSContext.close(),
JMSContext.stop()public void assertNotMessageListenerThread()
throws javax.jms.IllegalStateException
MessageListener is not calling from its own Connection or
MessageConsumer.
Note that the code must work without any need for further synchronization, as there is the requirement that only one MessageListener be called at a time. In other words, MessageListener calling is single-threaded.
javax.jms.IllegalStateExceptionConnection.close(),
MessageConsumer.close()Copyright © 2020 The Apache Software Foundation. All rights reserved.