|
Rice Pastry API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.util.Observable
rice.pastry.PastryNode
rice.pastry.transport.TLPastryNode
public class TLPastryNode
| Field Summary | |
|---|---|
static byte |
CONNECTION_NO_ACCEPTOR
|
static byte |
CONNECTION_NO_APP
|
static byte |
CONNECTION_OK
|
static byte |
CONNECTION_UNKNOWN
|
static byte |
CONNECTION_UNKNOWN_ERROR
|
protected ScheduledMessage |
joinEvent
|
protected int |
leafSetMaintFreq
|
protected ScheduledMessage |
leafSetRoutineMaintenance
|
protected LivenessProvider<NodeHandle> |
livenessProvider
|
protected int |
routeSetMaintFreq
|
protected ScheduledMessage |
routeSetRoutineMaintenance
|
| Fields inherited from class rice.pastry.PastryNode |
|---|
apps, isDestroyed, joinFailed, joinFailedReason, leafSet, localhandle, logger, myNodeId, router, routeSet |
| Fields inherited from interface org.mpisws.p2p.transport.liveness.LivenessListener |
|---|
LIVENESS_ALIVE, LIVENESS_DEAD, LIVENESS_DEAD_FOREVER, LIVENESS_SUSPECTED |
| Fields inherited from interface org.mpisws.p2p.transport.proximity.ProximityProvider |
|---|
DEFAULT_PROXIMITY |
| Constructor Summary | |
|---|---|
TLPastryNode(Id id,
Environment e)
|
|
| Method Summary | |
|---|---|
protected void |
acceptAppSocket(int appId)
|
void |
addLivenessListener(LivenessListener<NodeHandle> name)
|
void |
addProximityListener(ProximityListener<NodeHandle> listener)
|
boolean |
checkLiveness(NodeHandle i,
java.util.Map<java.lang.String,java.lang.Integer> options)
Returns wether a new notification will occur. |
void |
clearState(NodeHandle i)
Force layer to clear the existing state related to the Identifier. |
NodeHandle |
coalesce(NodeHandle newHandle)
Needed for legacy java deserialization of NodeHanlde because we aren't given any other way to do this properly such as a protected constructor. |
SocketRequestHandle |
connect(NodeHandle i2,
AppSocketReceiver deliverSocketToMe,
PastryAppl appl,
int timeout)
Called by PastryAppl to ask the transport layer to open a Socket to its counterpart on another node. |
void |
destroy()
Method which kills a PastryNode. |
void |
doneNode(java.util.Collection<NodeHandle> bootstrap)
Called after the node is initialized. |
void |
doneNode(NodeHandle[] bootstrap)
|
Bootstrapper |
getBootstrapper()
|
int |
getLiveness(NodeHandle i,
java.util.Map<java.lang.String,java.lang.Integer> options)
|
LivenessProvider<NodeHandle> |
getLivenessProvider()
|
ProximityProvider<NodeHandle> |
getProxProvider()
|
TransportLayer<NodeHandle,RawMessage> |
getTL()
|
void |
incomingSocket(P2PSocket<NodeHandle> s)
Notification of a new socket. |
void |
initiateJoin(NodeHandle[] bootstrap)
Overridden by derived classes to initiate the join process |
void |
livenessChanged(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
Called when the liveness changes. |
void |
messageReceived(NodeHandle i,
RawMessage m,
java.util.Map<java.lang.String,java.lang.Integer> options)
Called when a new message is received. |
void |
nodeIsReady()
Overridden by derived classes, and invoked when the node has joined successfully. |
protected void |
notifyLivenessListeners(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
|
int |
proximity(NodeHandle nh)
The proximity of the node handle. |
void |
proximityChanged(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
|
NodeHandle |
readNodeHandle(InputBuffer buf)
|
void |
registerReceiver(int address,
PastryAppl receiver)
Registers a message receiver with this Pastry node. |
boolean |
removeLivenessListener(LivenessListener<NodeHandle> name)
|
boolean |
removeProximityListener(ProximityListener<NodeHandle> listener)
|
ScheduledMessage |
scheduleMsg(Message msg,
long delay)
Schedule the specified message to be sent to the local node after a specified delay. |
ScheduledMessage |
scheduleMsg(Message msg,
long delay,
long period)
Schedule the specified message for repeated fixed-delay delivery to the local node, beginning after the specified delay. |
ScheduledMessage |
scheduleMsgAtFixedRate(Message msg,
long delay,
long period)
Schedule the specified message for repeated fixed-rate delivery to the local node, beginning after the specified delay. |
ExponentialBackoffScheduledMessage |
scheduleMsgExpBackoff(Message msg,
long delay,
long initialPeriod,
double expBase)
|
PMessageReceipt |
send(NodeHandle handle,
Message msg,
PMessageNotification deliverAckToMe,
java.util.Map<java.lang.String,java.lang.Integer> tempOptions)
Deliver message to the NodeHandle. |
void |
setSocketElements(NodeHandle localhandle,
int lsmf,
int rsmf,
TransportLayer<NodeHandle,RawMessage> tl,
LivenessProvider<NodeHandle> livenessProvider,
ProximityProvider<NodeHandle> proxProvider,
Deserializer deserializer,
NodeHandleFactory handleFactory,
Bootstrapper boot)
|
java.lang.String |
toString()
|
| Methods inherited from class java.util.Observable |
|---|
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final byte CONNECTION_UNKNOWN_ERROR
public static final byte CONNECTION_UNKNOWN
public static final byte CONNECTION_OK
public static final byte CONNECTION_NO_APP
public static final byte CONNECTION_NO_ACCEPTOR
protected ScheduledMessage joinEvent
protected int leafSetMaintFreq
protected int routeSetMaintFreq
protected ScheduledMessage leafSetRoutineMaintenance
protected ScheduledMessage routeSetRoutineMaintenance
protected LivenessProvider<NodeHandle> livenessProvider
| Constructor Detail |
|---|
public TLPastryNode(Id id,
Environment e)
| Method Detail |
|---|
public void registerReceiver(int address,
PastryAppl receiver)
PastryNode
registerReceiver in class PastryNodeaddress - the address that the receiver will be at.receiver - the message receiver.public NodeHandle coalesce(NodeHandle newHandle)
NodeHandleFactory
coalesce in interface NodeHandleFactorycoalesce in class PastryNode
public SocketRequestHandle connect(NodeHandle i2,
AppSocketReceiver deliverSocketToMe,
PastryAppl appl,
int timeout)
PastryNode
connect in class PastryNode
public void incomingSocket(P2PSocket<NodeHandle> s)
throws java.io.IOException
TransportLayerCallback
incomingSocket in interface TransportLayerCallback<NodeHandle,RawMessage>s - the incoming socket
java.io.IOException
protected void acceptAppSocket(int appId)
throws AppSocketException
AppSocketException
public ExponentialBackoffScheduledMessage scheduleMsgExpBackoff(Message msg,
long delay,
long initialPeriod,
double expBase)
public void initiateJoin(NodeHandle[] bootstrap)
PastryNode
initiateJoin in class PastryNodebootstrap - Node handle to bootstrap with.public void nodeIsReady()
PastryNode
nodeIsReady in class PastryNodepublic int proximity(NodeHandle nh)
PastryNode
proximity in interface ProximityProvider<NodeHandle>proximity in class PastryNode
public ScheduledMessage scheduleMsg(Message msg,
long delay)
scheduleMsg in class PastryNodemsg - a message that will be delivered to the local node after the
specified delaydelay - time in milliseconds before message is to be delivered
public ScheduledMessage scheduleMsg(Message msg,
long delay,
long period)
scheduleMsg in class PastryNodemsg - a message that will be delivered to the local node after the
specified delaydelay - time in milliseconds before message is to be deliveredperiod - time in milliseconds between successive message deliveries
public ScheduledMessage scheduleMsgAtFixedRate(Message msg,
long delay,
long period)
scheduleMsgAtFixedRate in class PastryNodemsg - a message that will be delivered to the local node after the
specified delaydelay - time in milliseconds before message is to be deliveredperiod - time in milliseconds between successive message deliveries
public PMessageReceipt send(NodeHandle handle,
Message msg,
PMessageNotification deliverAckToMe,
java.util.Map<java.lang.String,java.lang.Integer> tempOptions)
PastryNode
send in class PastryNode
public void messageReceived(NodeHandle i,
RawMessage m,
java.util.Map<java.lang.String,java.lang.Integer> options)
throws java.io.IOException
TransportLayerCallback
messageReceived in interface TransportLayerCallback<NodeHandle,RawMessage>i - The node it is coming fromm - the messageoptions - describe how the message arrived (udp/tcp, encrypted etc)
java.io.IOException - if there is a problem decoding the message
public NodeHandle readNodeHandle(InputBuffer buf)
throws java.io.IOException
readNodeHandle in interface NodeHandleFactoryjava.io.IOExceptionpublic Bootstrapper getBootstrapper()
getBootstrapper in class PastryNode
public void setSocketElements(NodeHandle localhandle,
int lsmf,
int rsmf,
TransportLayer<NodeHandle,RawMessage> tl,
LivenessProvider<NodeHandle> livenessProvider,
ProximityProvider<NodeHandle> proxProvider,
Deserializer deserializer,
NodeHandleFactory handleFactory,
Bootstrapper boot)
public void doneNode(java.util.Collection<NodeHandle> bootstrap)
bootstrap - The node which this node should boot off of.public void doneNode(NodeHandle[] bootstrap)
public java.lang.String toString()
toString in class PastryNodepublic void destroy()
PastryNode
destroy in interface Destructabledestroy in class PastryNode
public void livenessChanged(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
LivenessListener
livenessChanged in interface LivenessListener<NodeHandle>public void addLivenessListener(LivenessListener<NodeHandle> name)
addLivenessListener in interface LivenessProvider<NodeHandle>public boolean removeLivenessListener(LivenessListener<NodeHandle> name)
removeLivenessListener in interface LivenessProvider<NodeHandle>
protected void notifyLivenessListeners(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
public boolean checkLiveness(NodeHandle i,
java.util.Map<java.lang.String,java.lang.Integer> options)
LivenessProvider
checkLiveness in interface LivenessProvider<NodeHandle>i - the node to check
public int getLiveness(NodeHandle i,
java.util.Map<java.lang.String,java.lang.Integer> options)
getLiveness in interface LivenessProvider<NodeHandle>
public void proximityChanged(NodeHandle i,
int val,
java.util.Map<java.lang.String,java.lang.Integer> options)
proximityChanged in interface ProximityListener<NodeHandle>public LivenessProvider<NodeHandle> getLivenessProvider()
public ProximityProvider<NodeHandle> getProxProvider()
public TransportLayer<NodeHandle,RawMessage> getTL()
public void clearState(NodeHandle i)
LivenessProvider
clearState in interface LivenessProvider<NodeHandle>public void addProximityListener(ProximityListener<NodeHandle> listener)
addProximityListener in interface ProximityProvider<NodeHandle>public boolean removeProximityListener(ProximityListener<NodeHandle> listener)
removeProximityListener in interface ProximityProvider<NodeHandle>
|
Rice Pastry API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||