|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object lime.OutgoingMgr
Handles outgoing communication (unicast and groupcast) with remote hosts for operations and transactions.
Field Summary | |
private ConnectionMgr |
cmgr
A reference to the connection manager. |
private LimeServer |
limeServer
A reference to the LIMEServer singleton. |
private Queue |
outgoing
Holds RemoteOpDescriptor objects that are to be sent to other hosts. |
(package private) static int |
OUTGOING_QUEUE
The index of the outgoing queue within the outgoing queue mux. |
(package private) static int |
OUTGOING_TRANSACTION_QUEUE
The index of the outgoing transactions queue within the outgoing queue mux. |
private static OutgoingMgr |
outgoingMgr
Creates the OutgoingMgr. |
private QueueMux |
outgoingQueues
A Mux that determines from which queue the outgoingMgr should take and send TransactionOpDescriptors from. |
private Queue |
outgoingTransactions
A queue that contains the TransactionOpDescriptors that should be sent to another host. |
private TransactionMgr |
transMgr
A reference to the Transaction Manager. |
Constructor Summary | |
private |
OutgoingMgr()
OutgoingMgr is a singleton. |
Method Summary | |
void |
flushOutgoingQueue()
Blocks until the current outgoing queue is empty. |
(package private) static OutgoingMgr |
getOutgoingMgr()
Provides a reference to the OutgoingMgr singleton. |
java.util.Enumeration |
normElements()
Returns an enumeration of the elements within the normal outgoing queue. |
void |
removeNorm(RemoteOpDescriptor desc)
Removes the specified RemoteOpDsecriptor from the outgoing queue. |
void |
run()
Sits in a loop monitoring the outgoingQueues looking for messages to send and sending them. |
void |
send(RemoteOpDescriptor desc)
Adds a RemoteOpDescriptor to the current outgoing queue. |
void |
send(java.util.Vector buff,
LimeServerID dest)
Sends the objects stored in vector tmp to the specified LIMEServer. |
private void |
sendAllHosts(TransactionOpDescriptor desc)
Sends a message to everyone within the group regardless of whether they have a tuple space shared. |
private void |
sendGroupcast(TSOpDescriptor desc)
Sends a message to all hosts in the group with at least one tuple space shared. |
void |
sendNorm(RemoteOpDescriptor desc)
Adds a RemoteOpDescriptor to the outgoing queue. |
void |
sendTrans(RemoteOpDescriptor desc)
Sends a RemoteOpDescriptor via the transaction queue. |
void |
setOutgoingQueue(int qChoice)
Sets the active queue. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
static final int OUTGOING_QUEUE
static final int OUTGOING_TRANSACTION_QUEUE
private LimeServer limeServer
private TransactionMgr transMgr
private static final OutgoingMgr outgoingMgr
private ConnectionMgr cmgr
private Queue outgoing
private Queue outgoingTransactions
private QueueMux outgoingQueues
Constructor Detail |
private OutgoingMgr()
Method Detail |
public void send(RemoteOpDescriptor desc)
public void removeNorm(RemoteOpDescriptor desc)
public void sendNorm(RemoteOpDescriptor desc)
public java.util.Enumeration normElements()
public void sendTrans(RemoteOpDescriptor desc)
public void flushOutgoingQueue()
public void setOutgoingQueue(int qChoice)
static OutgoingMgr getOutgoingMgr()
public void run()
run
in interface java.lang.Runnable
private void sendAllHosts(TransactionOpDescriptor desc)
private void sendGroupcast(TSOpDescriptor desc)
public void send(java.util.Vector buff, LimeServerID dest)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |