javax.jms
Interface ConnectionConsumer
- public interface ConnectionConsumer
For application servers, Connections provide a special facility for
creating a ConnectionConsumer (optional). The messages it is to consume are
specified by a Destination and a Property Selector. In addition, a
ConnectionConsumer must be given a ServerSessionPool to use for
processing its messages.
Normally, when traffic is light, a ConnectionConsumer gets a
ServerSession from its pool; loads it with a single message; and,
starts it. As traffic picks up, messages can back up. If this happens,
a ConnectionConsumer can load each ServerSession with more than one
message. This reduces the thread context switches and minimizes resource
use at the expense of some serialization of a message processing.
- See Also:
QueueConnection.createConnectionConsumer(javax.jms.Queue, java.lang.String, javax.jms.ServerSessionPool, int)
,
TopicConnection.createConnectionConsumer(javax.jms.Topic, java.lang.String, javax.jms.ServerSessionPool, int)
,
TopicConnection.createDurableConnectionConsumer(javax.jms.Topic, java.lang.String, java.lang.String, javax.jms.ServerSessionPool, int)
Method Summary |
void |
close()
Since a provider may allocate some resources on behalf of a
ConnectionConsumer outside the JVM, clients should close them when
they are not needed. |
ServerSessionPool |
getServerSessionPool()
Get the server session pool associated with this connection consumer. |
getServerSessionPool
public ServerSessionPool getServerSessionPool()
throws JMSException
- Get the server session pool associated with this connection consumer.
- Returns:
- the server session pool used by this connection consumer.
- Throws:
- JMSException - if a JMS fails to get server sesion
pool associated with this consumer due
to some internal error.
close
public void close()
throws JMSException
- Since a provider may allocate some resources on behalf of a
ConnectionConsumer outside the JVM, clients should close them when
they are not needed. Relying on garbage collection to eventually
reclaim these resources may not be timely enough.
- Throws:
- JMSException - if a JMS fails to release resources on
behalf of ConnectionConsumer or it fails
to close the connection consumer.