|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectdk.netarkivet.common.distribute.JMSConnection
dk.netarkivet.common.distribute.JMSConnectionSunMQ
public class JMSConnectionSunMQ
Handles the communication with a Sun JMS broker. Note on Thread-safety: the methods and fields of JMSConnection are not accessed by multiple threads (though JMSConnection itself creates threads). Thus no synchronization is needed on methods and fields of JMSConnection. A shutdown hook is also added, which closes the connection. The warnings and errorcodes reported by Sun Message Queue 4.1 can be found in Appendix A Sun Java System Message Queue 4.1 Developer's Guide for Java Clients: http://docs.sun.com/app/docs/doc/819-7757/aeqgo?a=view
Field Summary | |
---|---|
protected static JMSConnectionSunMQ |
instance
Singleton pattern is be used for this class. |
(package private) static java.lang.String |
PACKET_ACK_FAILED
The errorcode for failure of the JMSbroker to acknowledge a message. |
(package private) static java.lang.String |
RECEIVED_GOODBYE_FROM_BROKER
The errorcode signifying that the JMSbroker has been shutdown. |
(package private) static java.lang.String |
SESSION_IS_CLOSED
The errorcode signifying that the current session to the JMSbroker has been closed by the jmsbroker. |
Fields inherited from class dk.netarkivet.common.distribute.JMSConnection |
---|
CONSUMER_KEY_SEPARATOR, consumers, JMS_MAXTRIES, log, myQConn, myQConnFactory, myQSess, myTConn, myTConnFactory, myTSess, publishers, reconnectInProgress, senders |
Method Summary | |
---|---|
void |
cleanup()
Close the connection and reset the singleton |
static JMSConnectionSunMQ |
getInstance()
Intialises an Open Message Queue JMS connection. |
protected javax.jms.Queue |
getQueue(java.lang.String queueName)
Returns an Queue. |
protected com.sun.messaging.QueueConnectionFactory |
getQueueConnectionFactory()
Returns a new QueueConnectionFactory. |
protected javax.jms.Topic |
getTopic(java.lang.String topicName)
Returns an Topic. |
protected com.sun.messaging.TopicConnectionFactory |
getTopicConnectionFactory()
Returns a new TopicConnectionFactory. |
void |
onException(javax.jms.JMSException e)
Exceptionhandler for the JMSConnection. |
Methods inherited from class dk.netarkivet.common.distribute.JMSConnection |
---|
close, establishConnectionAndSessions, getChannelName, getHost, getPort, initConnection, removeAllMessages, removeListener, reply, resend, send, sendMessage, setListener, unpack |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static JMSConnectionSunMQ instance
static final java.lang.String PACKET_ACK_FAILED
static final java.lang.String SESSION_IS_CLOSED
static final java.lang.String RECEIVED_GOODBYE_FROM_BROKER
Method Detail |
---|
public static JMSConnectionSunMQ getInstance() throws UnknownID, IOFailure
IOFailure
- when connection to JMS broker failed
UnknownID
protected com.sun.messaging.QueueConnectionFactory getQueueConnectionFactory() throws javax.jms.JMSException
getQueueConnectionFactory
in class JMSConnection
javax.jms.JMSException
protected com.sun.messaging.TopicConnectionFactory getTopicConnectionFactory() throws javax.jms.JMSException
getTopicConnectionFactory
in class JMSConnection
javax.jms.JMSException
protected javax.jms.Queue getQueue(java.lang.String queueName) throws javax.jms.JMSException
getQueue
in class JMSConnection
queueName
- the name of the queue.
javax.jms.JMSException
protected javax.jms.Topic getTopic(java.lang.String topicName) throws javax.jms.JMSException
getTopic
in class JMSConnection
topicName
- the name of the topic.
javax.jms.JMSException
public void cleanup()
cleanup
in interface CleanupIF
cleanup
in class JMSConnection
public void onException(javax.jms.JMSException e)
onException
in interface javax.jms.ExceptionListener
onException
in class JMSConnection
e
- an JMSException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |