|
ePOST API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object rice.pastry.client.PastryAppl
public abstract class PastryAppl
A PastryAppl is an abstract class that every Pastry application extends. This is the external Pastry API.
Field Summary | |
---|---|
protected Address |
address
|
protected java.lang.String |
instance
|
protected Logger |
logger
|
protected PastryNode |
thePastryNode
|
Constructor Summary | |
---|---|
PastryAppl(PastryNode pn)
Constructor. |
|
PastryAppl(PastryNode pn,
int port)
Constructor. |
|
PastryAppl(PastryNode pn,
java.lang.String instance)
Constructor. |
|
PastryAppl(PastryNode pn,
java.lang.String instance,
Address address)
|
Method Summary | |
---|---|
boolean |
deliverWhenNotReady()
Instructs the MessageDispatch how to behave when the PastryNode is not ready. |
void |
destroy()
Called when PastryNode is destroyed. |
boolean |
enrouteMessage(Message msg,
Id key,
NodeHandle nextHop,
SendOptions opt)
Called by pastry when a message is enroute and is passing through this node. |
Address |
getAddress()
Returns the address of this application. |
abstract Credentials |
getCredentials()
Returns the credentials of this application. |
LeafSet |
getLeafSet()
Called by a layered Pastry application to obtain a copy of the leaf set. |
NodeHandle |
getNodeHandle()
Gets the handle of the Pastry node associated with this client |
NodeId |
getNodeId()
Gets the node id associated with this client. |
RoutingTable |
getRoutingTable()
Called by a layered Pastry application to obtain a copy of the routing table. |
boolean |
isClosest(NodeId key)
Called by the layered Pastry application to check if the local pastry node is the one that is currently closest to the object key id. |
void |
leafSetChange(NodeHandle nh,
boolean wasAdded)
Called by pastry when the leaf set changes. |
abstract void |
messageForAppl(Message msg)
Called by pastry when a message arrives for this application. |
void |
notifyReady()
Invoked when the Pastry node has joined the overlay network and is ready to send and receive messages As of FreePastry 1.4.1, replaced by PastryNode Observer pattern. |
void |
receiveMessage(Message msg)
Called by pastry to deliver a message to this client. |
protected void |
register()
|
void |
registerReceiver(Credentials cred,
Address addr,
MessageReceiver mr)
Registers a message receiver with the pastry node. |
void |
routeMsg(Id key,
Message msg,
Credentials cred,
SendOptions opt)
Routes a message to the live node D with nodeId numerically closest to key (at the time of delivery). |
boolean |
routeMsgDirect(NodeHandle dest,
Message msg,
Credentials cred,
SendOptions opt)
Sends a message to the Pastry node identified by dest. |
void |
routeSetChange(NodeHandle nh,
boolean wasAdded)
Called by pastry when the route set changes. |
void |
sendMessage(Message msg)
Sends a message directly to the local pastry node. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected java.lang.String instance
protected PastryNode thePastryNode
protected Address address
protected Logger logger
Constructor Detail |
---|
public PastryAppl(PastryNode pn)
pn
- the pastry node that client will attach to.public PastryAppl(PastryNode pn, java.lang.String instance)
pn
- the pastry node that client will attach to.instance
- The instance name of this appl.public PastryAppl(PastryNode pn, java.lang.String instance, Address address)
public PastryAppl(PastryNode pn, int port)
pn
- the pastry node that client will attach to.instance
- The instance name of this appl.Method Detail |
---|
protected void register()
public Address getAddress()
public final void registerReceiver(Credentials cred, Address addr, MessageReceiver mr)
cred
- credentials which verify the bindingaddr
- an addressmr
- a message receiver which will be bound the address.public final void sendMessage(Message msg)
msg
- a message.public void receiveMessage(Message msg)
receiveMessage
in interface MessageReceiver
msg
- the message that is arriving.public final NodeId getNodeId()
public NodeHandle getNodeHandle()
public boolean routeMsgDirect(NodeHandle dest, Message msg, Credentials cred, SendOptions opt)
dest
- the destination nodemsg
- the message to deliver.cred
- credentials that verify the authenticity of the message.opt
- send options that describe how the message is to be routed.public void routeMsg(Id key, Message msg, Credentials cred, SendOptions opt)
key
- the keymsg
- the message to deliver.cred
- credentials that verify the authenticity of the message.opt
- send options that describe how the message is to be routed.public LeafSet getLeafSet()
public RoutingTable getRoutingTable()
public boolean isClosest(NodeId key)
key
- the object key id
public abstract Credentials getCredentials()
public abstract void messageForAppl(Message msg)
msg
- the message that is arriving.public boolean enrouteMessage(Message msg, Id key, NodeHandle nextHop, SendOptions opt)
msg
- the message that is passing through.key
- the keynextHop
- the default next hop for the message.opt
- the send options the message was sent with.
public void leafSetChange(NodeHandle nh, boolean wasAdded)
nh
- the handle of the node that was added or removed.wasAdded
- true if the node was added, false if the node was removed.public void routeSetChange(NodeHandle nh, boolean wasAdded)
nh
- the handle of the node that was added or removed.wasAdded
- true if the node was added, false if the node was removed.public void notifyReady()
public boolean deliverWhenNotReady()
public void destroy()
|
ePOST API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |