|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.util.Observable
rice.pastry.leafset.LeafSet
A class for representing and manipulating the leaf set. The leafset is not strictly a set: when the ring is small, a node may appear in both the cw and the ccw half of the "set".
| Constructor Summary | |
LeafSet(NodeHandle localNode,
int size)
Constructor. |
|
| Method Summary | |
void |
addObserver(java.util.Observer o)
Add observer method. |
int |
ccwSize()
Gets the current counterclockwise size. |
int |
cwSize()
Gets the current clockwise size. |
void |
deleteObserver(java.util.Observer o)
Delete observer method. |
NodeHandle |
get(int index)
Finds the NodeHandle at a given index. |
NodeHandle |
get(NodeId nid)
Finds the NodeHandle associated with the NodeId. |
int |
getIndex(NodeId nid)
Gets the index of the element with the given node id. |
int |
maxSize()
Gets the maximal size of the leaf set. |
boolean |
member(NodeId nid)
Verifies if the set contains this particular id. |
boolean |
merge(LeafSet remotels,
NodeHandle from,
RoutingTable routeTable,
PastrySecurityManager security,
boolean testOnly,
java.util.Set insertedHandles)
Merge a remote leafset into this |
int |
mostSimilar(Id nid)
Numerically closests node to a given a node in the leaf set. |
NodeSet |
neighborSet(int max)
compute an ordered set of nodes that are neighbors of this local node, in order of numerical closeness to the local node |
boolean |
overlaps()
Test if the leafset overlaps |
boolean |
put(NodeHandle handle)
Puts a NodeHandle into the set. |
IdRange |
range(NodeHandle n,
int r)
range computes the range of keys for which node n is a i-root, 0<=i<=r a node is the r-root for a key of the node becomes the numerically closest node to the key when i-roots for the key fail, O<=i |
IdRange |
range(NodeHandle n,
int r,
boolean cw)
range computes the ranges of keys for which node n is a r-root a node is the r-root for a key of the node becomes the numerically closest node to the key when i-roots for the key fail, O<=i |
NodeHandle |
remove(NodeId nid)
Removes a node id and its handle from the set. |
NodeSet |
replicaSet(Id key,
int max)
compute an ordered set of nodes, in order of numerical closeness to a given key |
int |
size()
Gets the current size of the leaf set. |
boolean |
test(NodeHandle handle)
Test if a put of the given NodeHandle would succeed. |
java.lang.String |
toString()
Returns a string representation of the leaf set |
| Methods inherited from class java.util.Observable |
clearChanged, countObservers, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public LeafSet(NodeHandle localNode,
int size)
size - the size of the leaf set.| Method Detail |
public boolean put(NodeHandle handle)
handle - the handle to put.
public boolean test(NodeHandle handle)
handle - the handle to test.
public boolean overlaps()
public NodeHandle get(NodeId nid)
nid - a node id.
public int getIndex(NodeId nid)
throws java.util.NoSuchElementException
nid - the node id.
java.util.NoSuchElementExceptionpublic NodeHandle get(int index)
index - an index.
public boolean member(NodeId nid)
nid - a node id.
public NodeHandle remove(NodeId nid)
nid - the node to remove.
public int maxSize()
public int size()
public int cwSize()
public int ccwSize()
public int mostSimilar(Id nid)
nid - a node id.
public NodeSet neighborSet(int max)
max - the maximal size of the set requested
public NodeSet replicaSet(Id key,
int max)
key - the keymax - the maximal size of the set requested
public IdRange range(NodeHandle n,
int r)
n - the nodehandler -
public IdRange range(NodeHandle n,
int r,
boolean cw)
n - the nodehandler - cw - if true returns the clockwise range, else the counterclockwise range
public boolean merge(LeafSet remotels,
NodeHandle from,
RoutingTable routeTable,
PastrySecurityManager security,
boolean testOnly,
java.util.Set insertedHandles)
remotels - the remote leafsetfrom - the node from which we received the leafsetrouteTable - the routing tablesecurity - the security managertestOnly - if true, do not change the leafsetinsertedHandles - if not null, a Set that contains, upon return of this method, the nodeHandles that would be inserted into this LeafSet if testOnly is true
public void addObserver(java.util.Observer o)
o - the observer to add.public void deleteObserver(java.util.Observer o)
o - the observer to delete.public java.lang.String toString()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||