ConnectionFactory implementation that delegates all calls
to a given target ConnectionFactory, adapting specific
create(Queue/Topic)Connection calls to the target ConnectionFactory
if necessary (e.g. when running JMS 1.0.2 API based code against a generic
JMS 1.1 ConnectionFactory, such as ActiveMQ's PooledConnectionFactory).

This class allows for being subclassed, with subclasses overriding only
those methods (such as createConnection()) that should not simply
delegate to the target ConnectionFactory.

Can also be defined as-is, wrapping a specific target ConnectionFactory,
using the "shouldStopConnections" flag to indicate whether Connections
obtained from the target factory are supposed to be stopped before closed.
The latter may be necessary for some connection pools that simply return
released connections to the pool, not stopping them while they sit in the pool.

Constructor Detail

DelegatingConnectionFactory

Method Detail

setTargetConnectionFactory

Set the target ConnectionFactory that this ConnectionFactory should delegate to.

getTargetConnectionFactory

public javax.jms.ConnectionFactory getTargetConnectionFactory()

Return the target ConnectionFactory that this ConnectionFactory delegates to.

setShouldStopConnections

public void setShouldStopConnections(boolean shouldStopConnections)

Indicate whether Connections obtained from the target factory are supposed
to be stopped before closed ("true") or simply closed ("false").
The latter may be necessary for some connection pools that simply return
released connections to the pool, not stopping them while they sit in the pool.