|
.NET Framework | |||||||||
PREV TYPE NEXT TYPE | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONST | PROP | METHOD | OP | EVENT | DETAIL: FIELD | CONST | PROP | METHOD | OP | EVENT |
This is the class that gets published. One-to-one releationship with a Naanou.LookupService.Node. Methods that get called on this object are most likely from another node somewhere on network.
Field Summary | |
---|---|
System.Collections.ArrayList | fillFingerWorkers |
Naanou.LookupService.Node | node |
Constructor Summary | |
---|---|
RemoteNode(Naanou.LookupService.Node node) Constructor |
Property Summary | |
---|---|
Naanou.Common.BasicAddress |
Address
Gets the address of this node |
Naanou.LookupService.NodeAddress | AddressNode |
bool | FingersReady |
string |
Network
Gets the network this node belongs too |
bool |
OnCycle
Is the node currently in a cycle |
Naanou.Common.BasicAddress |
Predecessor
Gets the predecessor of this node |
Naanou.LookupService.NodeAddress |
PredecessorNode
Predecessor node |
Naanou.Common.BasicAddress |
Successor
Gets the successor of this node |
Naanou.LookupService.NodeAddress |
SuccessorNode
Successor node |
Method Summary | |
---|---|
Naanou.Common.BasicAddress |
BackwardsProbe() Used by Node.StrongFastStabilisation (pg 24, Chord paper) |
void |
FillFingers(string[] entries, int size, bool forward) Constructs a finger table for another node |
void |
FillFingersDone(Naanou.LookupService.RemoteNode.FingerFiller finger, Naanou.Common.BasicAddress client) Call back from FingerFiller thread that it has completed |
bool |
FillFingersServicing(Naanou.Common.BasicAddress client, bool forward) Is this client being serviced already? |
void |
FindSuccessorNodeAsync(string id, Naanou.Common.FindSuccessorResult resultChain) Finds the successor node for a key, and returns the result when done via Naanou.LookupService.RemoteNode.FoundSuccessorNode(Naanou.Common.FindSuccessorResult,Naanou.Common.BasicAddress) |
void | FindSuccessorNodeAsync(string id, Naanou.LookupService.RemoteNode remoteNode, bool random, Naanou.Common.FindSuccessorResult resultChain) |
void |
FoundSuccessorNode(Naanou.Common.FindSuccessorResult result, Naanou.Common.BasicAddress nodeQueried) Gets called remotely via Naanou.LookupService.RemoteNode.FindSuccessorNodeAsync(System.String,Naanou.Common.FindSuccessorResult) |
void |
GetKeyAsync(string id, string requestSerial) Gets a previously stored item from a key, and returns the result when done via Naanou.LookupService.RemoteNode.GotKey(Naanou.Common.GetKeyResult) |
void | GetKeyAsync(Naanou.Common.Hash id, Naanou.LookupService.RemoteNode client, string requestSerial) |
Naanou.Common.BasicAddress[] |
GetSuccessorList() Gets this nodes successor list |
void |
GotKey(Naanou.Common.GetKeyResult result) Gets called from someone else via Naanou.LookupService.RemoteNode.GetKeyAsync(System.String,System.String) |
object |
InitializeLifetimeService() Ensure that RemoteNode instance doesn't get destroyed on server-side |
System.Collections.ArrayList |
KeyDump() Returns an arraylist of all keys node has stored |
void |
NotifyFingers(Naanou.Common.BasicAddress[] fingers, bool forward) Called when the node we requested fingers from has finished |
void |
NotifyPredecessor() Called by a remote node who thinks it is our predecessor |
void |
NotifyPredecessorOffline(Naanou.Common.BasicAddress newPredecessor, System.Collections.ArrayList keysToUpgrade) A notification by this nodes predecessor that it is going offline |
void |
NotifySuccessor() Called by a remote node who thinks it is our better successor |
void |
NotifySuccessorOffline(Naanou.Common.BasicAddress newSuccessor, System.Collections.ArrayList keysToUpgrade) A notification by this nodes successor that it is going offline |
long |
Ping(long opaque, string address) Ping to see if we are alive and well. |
long |
Ping(long opaque) Ping to see if we are alive and well. |
void |
PutKey(string idSerial, Naanou.Common.Search.IKey data, long expire, int authority, int hops) Stores a key and associated data value. |
void |
PutKey(string idSerial, Naanou.Common.Search.IKey data, string inserterSerial, long expire, int authority, int hops) Puts a key |
void | PutKeyImpl(string idSerial, Naanou.Common.Search.IKey data, Naanou.Common.Hash inserter, long expire, int authority, int hops) |
void |
QueryAsync(Naanou.Common.Search.SearchQuery query, string requestSerial) Performs an asynchronous key query locally. |
void |
QueryProgress(Naanou.Common.Search.SearchResultSet result, bool completed) Notication from another node about the progress of a query we peformed |
void | RandomFindSuccessorNodeAsync(string id, Naanou.Common.FindSuccessorResult resultChain) |
bool |
SuggestPredecessor(Naanou.Common.BasicAddress suggested) Someone has a suggestion for a predecessor for us |
bool |
SuggestSuccessor(Naanou.Common.BasicAddress suggested) Called when a node has a suggestion for a node |
Methods inherited from class System.MarshalByRefObject |
---|
CreateObjRef, GetLifetimeService |
Methods inherited from class System.Object |
---|
Equals, Finalize, GetHashCode, GetType, MemberwiseClone, ToString |
Field Detail |
---|
private System.Collections.ArrayList fillFingerWorkers
private Naanou.LookupService.Node node
Constructor Detail |
---|
internal RemoteNode(Naanou.LookupService.Node node)
Constructor
Parameters:
node
- Node to link toProperty Detail |
---|
public Naanou.Common.BasicAddress Address
Gets the address of this node
private Naanou.LookupService.NodeAddress AddressNode
public bool FingersReady
public string Network
Gets the network this node belongs too
public bool OnCycle
Is the node currently in a cycle
public Naanou.Common.BasicAddress Predecessor
Gets the predecessor of this node
internal Naanou.LookupService.NodeAddress PredecessorNode
Predecessor node
public Naanou.Common.BasicAddress Successor
Gets the successor of this node
private Naanou.LookupService.NodeAddress SuccessorNode
Successor node
Method Detail |
---|
public Naanou.Common.BasicAddress BackwardsProbe()
Used by Node.StrongFastStabilisation (pg 24, Chord paper)
Returns:
public void FillFingers(string[] entries, int size, bool forward)
Constructs a finger table for another node
Parameters:
entries
- Fingerssize
- Sizeforward
- Is table forward lookingprotected void FillFingersDone(Naanou.LookupService.RemoteNode.FingerFiller finger, Naanou.Common.BasicAddress client)
Call back from FingerFiller thread that it has completed
Parameters:
finger
- client
- internal bool FillFingersServicing(Naanou.Common.BasicAddress client, bool forward)
Is this client being serviced already?
Parameters:
client
- Clientforward
- Is table forwardpublic void FindSuccessorNodeAsync(string id, Naanou.Common.FindSuccessorResult resultChain)
Finds the successor node for a key, and returns the result when done via Naanou.LookupService.RemoteNode.FoundSuccessorNode(Naanou.Common.FindSuccessorResult,Naanou.Common.BasicAddress)
Parameters:
id
- KeyresultChain
- ResultChain to build onprivate void FindSuccessorNodeAsync(string id, Naanou.LookupService.RemoteNode remoteNode, bool random, Naanou.Common.FindSuccessorResult resultChain)
public void FoundSuccessorNode(Naanou.Common.FindSuccessorResult result, Naanou.Common.BasicAddress nodeQueried)
Gets called remotely via Naanou.LookupService.RemoteNode.FindSuccessorNodeAsync(System.String,Naanou.Common.FindSuccessorResult)
Parameters:
result
- ResultnodeQueried
- Node queried for successorpublic void GetKeyAsync(string id, string requestSerial)
Gets a previously stored item from a key, and returns the result when done via Naanou.LookupService.RemoteNode.GotKey(Naanou.Common.GetKeyResult)
Parameters:
id
- Keyprivate void GetKeyAsync(Naanou.Common.Hash id, Naanou.LookupService.RemoteNode client, string requestSerial)
public Naanou.Common.BasicAddress[] GetSuccessorList()
Gets this nodes successor list
Returns:
public void GotKey(Naanou.Common.GetKeyResult result)
Gets called from someone else via Naanou.LookupService.RemoteNode.GetKeyAsync(System.String,System.String)
Parameters:
result
- Resultpublic object InitializeLifetimeService()
Ensure that RemoteNode instance doesn't get destroyed on server-side
Returns:
public System.Collections.ArrayList KeyDump()
Returns an arraylist of all keys node has stored
Returns:
public void NotifyFingers(Naanou.Common.BasicAddress[] fingers, bool forward)
Called when the node we requested fingers from has finished
Parameters:
fingers
- Fingersforward
- Forward fingers? (false if backward)public void NotifyPredecessor()
Called by a remote node who thinks it is our predecessor
public void NotifyPredecessorOffline(Naanou.Common.BasicAddress newPredecessor, System.Collections.ArrayList keysToUpgrade)
A notification by this nodes predecessor that it is going offline
Parameters:
newPredecessor
- Recommended new predecessor to usepublic void NotifySuccessor()
Called by a remote node who thinks it is our better successor
public void NotifySuccessorOffline(Naanou.Common.BasicAddress newSuccessor, System.Collections.ArrayList keysToUpgrade)
A notification by this nodes successor that it is going offline
Parameters:
newSuccessor
- Recommended new successor to usepublic long Ping(long opaque, string address)
Ping to see if we are alive and well.
Parameters:
opaque
- Opaque value to returnaddress
- Returns the address that the server sees the client aspublic long Ping(long opaque)
Ping to see if we are alive and well.
Parameters:
opaque
- Opaque value to returnpublic void PutKey(string idSerial, Naanou.Common.Search.IKey data, long expire, int authority, int hops)
Stores a key and associated data value.
Parameters:
authority
- Authority (use -1 for no automatic key caching)expire
- ExpiryidSerial
- Key's id serialhops
- Hopsdata
- Datapublic void PutKey(string idSerial, Naanou.Common.Search.IKey data, string inserterSerial, long expire, int authority, int hops)
Puts a key
Parameters:
idSerial
- Iddata
- DatainserterSerial
- Inserterexpire
- Expiry ticksauthority
- Authority level (use -1 for no automatic key caching)hops
- Hops takenprivate void PutKeyImpl(string idSerial, Naanou.Common.Search.IKey data, Naanou.Common.Hash inserter, long expire, int authority, int hops)
public void QueryAsync(Naanou.Common.Search.SearchQuery query, string requestSerial)
Performs an asynchronous key query locally.
Parameters:
query
- Query to performpublic void QueryProgress(Naanou.Common.Search.SearchResultSet result, bool completed)
Notication from another node about the progress of a query we peformed
Parameters:
result
- Current result setcompleted
- Has query been completedpublic void RandomFindSuccessorNodeAsync(string id, Naanou.Common.FindSuccessorResult resultChain)
public bool SuggestPredecessor(Naanou.Common.BasicAddress suggested)
Someone has a suggestion for a predecessor for us
Parameters:
suggested
- Suggestionpublic bool SuggestSuccessor(Naanou.Common.BasicAddress suggested)
Called when a node has a suggestion for a node
Parameters:
suggested
- Suggested successor
|
.NET Framework | |||||||||
PREV TYPE NEXT TYPE | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONST | PROP | METHOD | OP | EVENT | DETAIL: FIELD | CONST | PROP | METHOD | OP | EVENT |