|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.joram.mom.dest.DestinationImpl
org.objectweb.joram.mom.dest.TopicImpl
org.objectweb.joram.mom.dest.jmsbridge.JMSBridgeTopicImpl
public class JMSBridgeTopicImpl
The BridgeTopicImpl
class implements a specific topic which
forwards the messages it receives to a foreign JMS destination, and
gets the messages it is requested to deliver from the same foreign
destination.
This topic is in fact a bridge linking JORAM and a foreign JMS server, and which is accessible through the Pub/Sub communication mode.
Field Summary | |
---|---|
private long |
arrivalsCounter
Counter for keeping the original delivery order. |
private JMSBridgeModule |
jmsModule
The JMS module for accessing the foreign JMS destination. |
private java.util.Hashtable |
outTable
Table persisting the outgoing messages until acknowledgement by the bridge module. |
private static long |
serialVersionUID
define serialVersionUID for interoperability |
Fields inherited from class org.objectweb.joram.mom.dest.TopicImpl |
---|
alreadySentLocally, fatherId, friends, selectors, subscribers |
Fields inherited from class org.objectweb.joram.mom.dest.DestinationImpl |
---|
_rights, agent, clients, creationDate, dmqId, freeReading, freeWriting, logger, nbMsgsDeliverSinceCreation, nbMsgsReceiveSinceCreation, nbMsgsSentToDMQSinceCreation, READ, READWRITE, WAKEUP_PERIOD, WRITE |
Constructor Summary | |
---|---|
JMSBridgeTopicImpl(AgentId adminId,
java.util.Properties prop)
Constructs a BridgeTopicImpl instance. |
Method Summary | |
---|---|
void |
bridgeAckNot(JMSBridgeAckNot not)
Reacts to BridgeAckNot notifications holding the identifier
of a message successfuly delivered to the foreign JMS server. |
void |
bridgeDeliveryNot(AgentId from,
JMSBridgeDeliveryNot not)
Reacts to BridgeDeliveryNot notifications holding a message
received from the foreign JMS server. |
protected void |
close()
|
protected void |
doDeleteNot(DeleteNot not)
Method specifically processing a fr.dyade.aaa.agent.DeleteNot instance. |
void |
initialize(boolean firstTime)
Initializes the destination. |
void |
postSubscribe()
Method specializing the reaction to a SubscribeRequest
instance. |
ClientMessages |
preProcess(AgentId from,
ClientMessages not)
Method specializing the reaction to a ClientMessages
instance. |
void |
preUnsubscribe()
Method specializing the reaction to an UnsubscribeRequest
instance. |
void |
topicForwardNot(AgentId from,
TopicForwardNot not)
Method specializing the reaction to a TopicForwardNot
instance, carrying messages forwarded by a cluster fellow or a
hierarchical son. |
java.lang.String |
toString()
Returns a string representation of this destination. |
Methods inherited from class org.objectweb.joram.mom.dest.TopicImpl |
---|
clusterAck, clusterNot, clusterTest, doClientMessages, doRightRequest, doUnknownAgent, forwardMessages, getNbMsgsReceiveSinceCreation, getNumberOfSubscribers, getSubscriberIds, handleAdminRequestNot, postUnsubscribe, preSubscribe, processMessages, setAlreadySentLocally, subscribeRequest, topicForwardNot, unsubscribeRequest, wakeUpNot |
Methods inherited from class org.objectweb.joram.mom.dest.DestinationImpl |
---|
canBeDeleted, clientMessages, delete, deleteNot, forward, getCreationDate, getCreationTimeInMillis, getDestinationId, getDMQAgentId, getDMQId, getId, getJMXStatistics, getName, getNbMsgsDeliverSinceCreation, getNbMsgsSentToDMQSinceCreation, getPeriod, getRight, getRights, getRights, handleDeniedMessage, isAdministrator, isFreeReading, isFreeWriting, isLocal, isReader, isValidJMXAttribute, isWriter, postProcess, processSetRight, replyToTopic, requestGroupNot, setAgent, setFreeReading, setFreeWriting, setPeriod, setRight, specialAdminProcess, specialAdminRequest, unknownAgent |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.objectweb.joram.mom.dest.DestinationImplMBean |
---|
delete, getCreationDate, getCreationTimeInMillis, getDestinationId, getDMQId, getName, getNbMsgsDeliverSinceCreation, getNbMsgsSentToDMQSinceCreation, getPeriod, getRight, getRights, isFreeReading, isFreeWriting, setFreeReading, setFreeWriting, setPeriod |
Field Detail |
---|
private static final long serialVersionUID
private JMSBridgeModule jmsModule
private long arrivalsCounter
private java.util.Hashtable outTable
Key: message identifier
Value: message
Constructor Detail |
---|
public JMSBridgeTopicImpl(AgentId adminId, java.util.Properties prop)
BridgeTopicImpl
instance.
adminId
- Identifier of the administrator of the topic.prop
- The initial set of properties.Method Detail |
---|
public void initialize(boolean firstTime)
initialize
in class TopicImpl
firstTime
- true when first called by the factorypublic java.lang.String toString()
TopicImpl
toString
in interface DestinationImplMBean
toString
in class TopicImpl
public void bridgeDeliveryNot(AgentId from, JMSBridgeDeliveryNot not)
BridgeDeliveryNot
notifications holding a message
received from the foreign JMS server.
public void bridgeAckNot(JMSBridgeAckNot not)
BridgeAckNot
notifications holding the identifier
of a message successfuly delivered to the foreign JMS server.
public void postSubscribe()
SubscribeRequest
instance.
This method sets, if needed, a JMS listener on the foreign JMS consumer.
postSubscribe
in class TopicImpl
AccessException
- If the sender is not a READER.public void preUnsubscribe()
UnsubscribeRequest
instance.
This method unsets, if needed, the JMS listener on the foreign JMS consumer.
preUnsubscribe
in class TopicImpl
public void topicForwardNot(AgentId from, TopicForwardNot not)
TopicForwardNot
instance, carrying messages forwarded by a cluster fellow or a
hierarchical son.
This method forwards the messages, if needed, to the hierarchical father, and to the foreign JMS destination.
public ClientMessages preProcess(AgentId from, ClientMessages not)
ClientMessages
instance.
This method may forward the messages to the topic father if any, or to the cluster fellows if any, and to the foreign JMS destination.
preProcess
in class DestinationImpl
from
- The sender of the messagenot
- The incoming messages.
protected void doDeleteNot(DeleteNot not)
fr.dyade.aaa.agent.DeleteNot
instance.
This method closes the JMS resources used for connecting to the foreign JMS server.
doDeleteNot
in class TopicImpl
protected void close()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |