Interface ServerSession
ServerSession object is an application server object that
is used by a server to associate a thread with a JMS session (optional).
A ServerSession implements two methods:
getSession- returns theServerSession's JMS session.start- starts the execution of theServerSessionthread and results in the execution of the JMS session'srunmethod.
A ConnectionConsumer implemented by a JMS provider uses a
ServerSession to process one or more messages that have
arrived. It does this by getting a ServerSession from the
ConnectionConsumer's ServerSessionPool; getting
the ServerSession's JMS session; loading it with the messages;
and then starting the ServerSession.
In most cases the ServerSession will register some object
it provides as the ServerSession's thread run object. The
ServerSession's start method will call the
thread's start method, which will start the new thread, and
from it, call the run method of the
ServerSession's run object. This object will do some
housekeeping and then call the Session's run
method. When run returns, the ServerSession's run
object can return the ServerSession to the
ServerSessionPool, and the cycle starts again.
Note that the JMS API does not architect how the
ConnectionConsumer loads the Session with
messages. Since both the ConnectionConsumer and
Session are implemented by the same JMS provider, they can
accomplish the load using a private mechanism.
- Since:
- JMS 1.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionReturn theServerSession'sSession.voidstart()Cause theSession'srunmethod to be called to process messages that were just assigned to it.
-
Method Details
-
getSession
Return theServerSession'sSession. This must be aSessioncreated by the sameConnectionthat will be dispatching messages to it. The provider will assign one or more messages to theSessionand then callstarton theServerSession.- Returns:
- the server session's session
- Throws:
JMSException- if the JMS provider fails to get the associated session for thisServerSessiondue to some internal error.
-
start
Cause theSession'srunmethod to be called to process messages that were just assigned to it.- Throws:
JMSException- if the JMS provider fails to start the server session to process messages due to some internal error.
-