com.caucho.jms.cluster
Class ClusterQueueTriadActor

java.lang.Object
  extended by com.caucho.bam.stream.AbstractMessageStream
      extended by com.caucho.bam.actor.SimpleActor
          extended by com.caucho.cloud.bam.AbstractCloudActor
              extended by com.caucho.jms.cluster.ClusterQueueActor
                  extended by com.caucho.jms.cluster.ClusterQueueTriadActor
All Implemented Interfaces:
Actor, ActorHolder, ManagedActor, MessageStream

public class ClusterQueueTriadActor
extends ClusterQueueActor

Implements a cluster send queue.


Constructor Summary
ClusterQueueTriadActor(CloudServer server)
           
 
Method Summary
protected  FileQueueStore getStore()
           
 void pollQuery(long id, java.lang.String to, java.lang.String from, PollQuery poll)
           
 void processSubscribeTopic(long id, java.lang.String to, java.lang.String from, SubscribeTopic msg)
          Registers Topic Subscriber's Jabber Id in to the Triad Cache.
 void processTriadTopicMessage(java.lang.String to, java.lang.String from, TriadTopicMessage msg)
          Processes the messages published by the Topic publisher.
 void start()
           
 void stop()
           
 void triadRequest(long id, java.lang.String to, java.lang.String from, TriadReceiveQuery query)
          Queries a queue message for a triad server.
 void triadSendQueue(long id, java.lang.String to, java.lang.String from, TriadSendMessage msg)
          Receives a queue message by a triad server, to be forwarded to the destination server.
 
Methods inherited from class com.caucho.jms.cluster.ClusterQueueActor
createMessageSender, processTopicMessage
 
Methods inherited from class com.caucho.cloud.bam.AbstractCloudActor
dbgId, getBamSender, getMailboxType, getManagedBroker, getPod, registerActor
 
Methods inherited from class com.caucho.bam.actor.SimpleActor
getActor, getAddress, getBroker, getMailbox, getSender, setAddress, setBroker, setMailbox
 
Methods inherited from class com.caucho.bam.stream.AbstractMessageStream
isClosed, message, messageError, query, queryError, queryResult, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.caucho.bam.stream.MessageStream
isClosed, message, messageError, query, queryError, queryResult
 

Constructor Detail

ClusterQueueTriadActor

public ClusterQueueTriadActor(CloudServer server)
Method Detail

start

public void start()
Overrides:
start in class ClusterQueueActor

stop

public void stop()
Overrides:
stop in class ClusterQueueActor

getStore

protected FileQueueStore getStore()

triadSendQueue

@Query
public void triadSendQueue(long id,
                                 java.lang.String to,
                                 java.lang.String from,
                                 TriadSendMessage msg)
Receives a queue message by a triad server, to be forwarded to the destination server.


pollQuery

@Query
public void pollQuery(long id,
                            java.lang.String to,
                            java.lang.String from,
                            PollQuery poll)

triadRequest

@Query
public void triadRequest(long id,
                               java.lang.String to,
                               java.lang.String from,
                               TriadReceiveQuery query)
Queries a queue message for a triad server.


processSubscribeTopic

@Query
public void processSubscribeTopic(long id,
                                        java.lang.String to,
                                        java.lang.String from,
                                        SubscribeTopic msg)
Registers Topic Subscriber's Jabber Id in to the Triad Cache. This API is invoked only on the Triad Pod server.


processTriadTopicMessage

@Message
public void processTriadTopicMessage(java.lang.String to,
                                             java.lang.String from,
                                             TriadTopicMessage msg)
Processes the messages published by the Topic publisher. Basically message is forwarded all the Topic subscribers. This API is invoked only on the Triad Pod server.