org.apache.axis.transport.jms
Class JMSConnector

java.lang.Object
  |
  +--org.apache.axis.transport.jms.JMSConnector
Direct Known Subclasses:
QueueConnector, TopicConnector

public abstract class JMSConnector
extends java.lang.Object

JMSConnector is an abstract class that encapsulates the work of connecting to JMS destinations. Its subclasses are TopicConnector and QueueConnector which further specialize connections to the pub-sub and the ptp domains. It also implements the capability to retry connections in the event of failures.

Author:
Jaime Meritt (jmeritt@sonicsoftware.com), Richard Chung (rchung@sonicsoftware.com), Dave Chappell (chappell@sonicsoftware.com)

Nested Class Summary
protected  class JMSConnector.AsyncConnection
           
protected  class JMSConnector.SyncConnection
           
 
Field Summary
protected  JMSVendorAdapter m_adapter
           
protected  boolean m_allowReceive
           
protected  long m_connectRetryInterval
           
protected  long m_interactRetryInterval
           
protected  int m_numRetries
           
protected  int m_numSessions
           
protected  long m_poolTimeout
           
protected  JMSConnector.AsyncConnection m_receiveConnection
           
protected  JMSConnector.SyncConnection m_sendConnection
           
protected  long m_timeoutTime
           
 
Constructor Summary
JMSConnector(javax.jms.ConnectionFactory connectionFactory, int numRetries, int numSessions, long connectRetryInterval, long interactRetryInterval, long timeoutTime, boolean allowReceive, java.lang.String clientID, java.lang.String username, java.lang.String password, JMSVendorAdapter adapter)
           
 
Method Summary
protected abstract  JMSConnector.AsyncConnection createAsyncConnection(javax.jms.ConnectionFactory factory, javax.jms.Connection connection, java.lang.String threadName, java.lang.String clientID, java.lang.String username, java.lang.String password)
           
protected  javax.jms.Connection createConnectionWithRetry(javax.jms.ConnectionFactory connectionFactory, java.lang.String username, java.lang.String password)
           
abstract  JMSEndpoint createEndpoint(javax.jms.Destination destination)
           
abstract  JMSEndpoint createEndpoint(java.lang.String destinationName)
           
protected abstract  JMSConnector.SyncConnection createSyncConnection(javax.jms.ConnectionFactory factory, javax.jms.Connection connection, int numSessions, java.lang.String threadName, java.lang.String clientID, java.lang.String username, java.lang.String password)
           
protected abstract  javax.jms.Connection internalConnect(javax.jms.ConnectionFactory connectionFactory, java.lang.String username, java.lang.String password)
           
 void shutdown()
           
 void start()
           
 void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_numRetries

protected int m_numRetries

m_connectRetryInterval

protected long m_connectRetryInterval

m_interactRetryInterval

protected long m_interactRetryInterval

m_timeoutTime

protected long m_timeoutTime

m_poolTimeout

protected long m_poolTimeout

m_receiveConnection

protected JMSConnector.AsyncConnection m_receiveConnection

m_sendConnection

protected JMSConnector.SyncConnection m_sendConnection

m_numSessions

protected int m_numSessions

m_allowReceive

protected boolean m_allowReceive

m_adapter

protected JMSVendorAdapter m_adapter
Constructor Detail

JMSConnector

public JMSConnector(javax.jms.ConnectionFactory connectionFactory,
                    int numRetries,
                    int numSessions,
                    long connectRetryInterval,
                    long interactRetryInterval,
                    long timeoutTime,
                    boolean allowReceive,
                    java.lang.String clientID,
                    java.lang.String username,
                    java.lang.String password,
                    JMSVendorAdapter adapter)
             throws javax.jms.JMSException
Method Detail

createConnectionWithRetry

protected javax.jms.Connection createConnectionWithRetry(javax.jms.ConnectionFactory connectionFactory,
                                                         java.lang.String username,
                                                         java.lang.String password)
                                                  throws javax.jms.JMSException
javax.jms.JMSException

stop

public void stop()

start

public void start()

shutdown

public void shutdown()

createEndpoint

public abstract JMSEndpoint createEndpoint(java.lang.String destinationName)
                                    throws javax.jms.JMSException
javax.jms.JMSException

createEndpoint

public abstract JMSEndpoint createEndpoint(javax.jms.Destination destination)
                                    throws javax.jms.JMSException
javax.jms.JMSException

internalConnect

protected abstract javax.jms.Connection internalConnect(javax.jms.ConnectionFactory connectionFactory,
                                                        java.lang.String username,
                                                        java.lang.String password)
                                                 throws javax.jms.JMSException
javax.jms.JMSException

createSyncConnection

protected abstract JMSConnector.SyncConnection createSyncConnection(javax.jms.ConnectionFactory factory,
                                                                    javax.jms.Connection connection,
                                                                    int numSessions,
                                                                    java.lang.String threadName,
                                                                    java.lang.String clientID,
                                                                    java.lang.String username,
                                                                    java.lang.String password)
                                                             throws javax.jms.JMSException
javax.jms.JMSException

createAsyncConnection

protected abstract JMSConnector.AsyncConnection createAsyncConnection(javax.jms.ConnectionFactory factory,
                                                                      javax.jms.Connection connection,
                                                                      java.lang.String threadName,
                                                                      java.lang.String clientID,
                                                                      java.lang.String username,
                                                                      java.lang.String password)
                                                               throws javax.jms.JMSException
javax.jms.JMSException


Copyright © 2003 Apache Web Services Project. All Rights Reserved.