|
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.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. |
|
LeafSet(NodeHandle localNode,
int size,
boolean observe)
Constructor for LeafSet. |
Method Summary | |
void |
addObserver(java.util.Observer o)
Add observer method. |
int |
ccwSize()
Gets the current counterclockwise size. |
LeafSet |
copy()
DESCRIBE THE METHOD |
int |
cwSize()
Gets the current clockwise size. |
void |
deleteObserver(java.util.Observer o)
Delete observer method. |
boolean |
directTest(NodeHandle handle)
DESCRIBE THE METHOD |
NodeHandle |
get(int index)
Finds the NodeHandle at a given index. |
int |
getIndex(NodeHandle nh)
Gets the index of the element with the given node id. |
boolean |
isComplete()
Gets the Complete attribute of the LeafSet object |
protected boolean |
isProperlyRemoved(NodeHandle handle)
Gets the ProperlyRemoved attribute of the LeafSet object |
int |
maxSize()
Gets the maximal size of the leaf set. |
boolean |
member(NodeHandle nid)
Verifies if the set contains this particular handle. |
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(NodeHandle nh)
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. |
protected boolean |
testOtherSet(SimilarSet set,
NodeHandle handle)
A unit test for JUnit |
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.localNode
- DESCRIBE THE PARAMETERpublic LeafSet(NodeHandle localNode, int size, boolean observe)
localNode
- DESCRIBE THE PARAMETERsize
- DESCRIBE THE PARAMETERobserve
- DESCRIBE THE PARAMETERMethod Detail |
public boolean isComplete()
public int getIndex(NodeHandle nh) throws java.util.NoSuchElementException
nh
- DESCRIBE THE PARAMETER
java.util.NoSuchElementException
- DESCRIBE THE EXCEPTIONpublic NodeHandle get(int index)
index
- an index.
protected boolean isProperlyRemoved(NodeHandle handle)
handle
- DESCRIBE THE PARAMETER
public boolean put(NodeHandle handle)
handle
- the handle to put.
public boolean test(NodeHandle handle)
handle
- the handle to test.
public boolean overlaps()
public boolean member(NodeHandle nid)
nid
- a NodeHandle.
public boolean member(NodeId nid)
nid
- a node id.
public NodeHandle remove(NodeHandle nh)
nh
- DESCRIBE THE PARAMETER
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()
protected boolean testOtherSet(SimilarSet set, NodeHandle handle)
set
- DESCRIBE THE PARAMETERhandle
- DESCRIBE THE PARAMETER
public boolean directTest(NodeHandle handle)
handle
- DESCRIBE THE PARAMETER
public LeafSet copy()
|
Rice Pastry API | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |