peersim.skipnet
Class SkipnetRoutingTable

java.lang.Object
  extended by peersim.skipnet.SkipnetRoutingTable

public class SkipnetRoutingTable
extends java.lang.Object

Represents the peersim.extras.am.skipnet routing table.


Field Summary
protected  java.util.Vector leftLeafset
           
protected  java.util.Vector rightLeafset
           
 
Constructor Summary
SkipnetRoutingTable(peersim.core.Node localnode, int height, int skipnetpid)
           
 
Method Summary
 boolean changeRoutingTableElement(SkipnetUtil.Direction dir, int level, peersim.core.Node neighbor)
           
 void flattenRoutingTable()
           
 int getHeight()
           
 java.util.Vector getLeafset(SkipnetUtil.Direction dir)
           
 peersim.core.Node getNeighbor(SkipnetUtil.Direction dir, int height)
           
 java.util.Vector<peersim.core.Node> getNeighbors()
           
 peersim.core.Node[] getNeighbors(SkipnetUtil.Direction direction)
           
 void insertIntoRings(peersim.core.Node[] msgRingNbrLeft, peersim.core.Node[] msgRingNbrRight)
           
 void pingNeighbors()
           
 void print()
           
 void setLeafset(SkipnetUtil.Direction dir, java.util.Vector leafset)
           
 java.lang.String toString()
           
 peersim.core.Node tryRouteOneHop(SkipnetName destination)
           
 void verifyPing(peersim.skipnet.messages.Ping ping)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

rightLeafset

protected java.util.Vector rightLeafset

leftLeafset

protected java.util.Vector leftLeafset
Constructor Detail

SkipnetRoutingTable

public SkipnetRoutingTable(peersim.core.Node localnode,
                           int height,
                           int skipnetpid)
Method Detail

getNeighbors

public peersim.core.Node[] getNeighbors(SkipnetUtil.Direction direction)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

print

public void print()

changeRoutingTableElement

public boolean changeRoutingTableElement(SkipnetUtil.Direction dir,
                                         int level,
                                         peersim.core.Node neighbor)

flattenRoutingTable

public void flattenRoutingTable()

getNeighbor

public peersim.core.Node getNeighbor(SkipnetUtil.Direction dir,
                                     int height)

getHeight

public int getHeight()

getNeighbors

public java.util.Vector<peersim.core.Node> getNeighbors()

insertIntoRings

public void insertIntoRings(peersim.core.Node[] msgRingNbrLeft,
                            peersim.core.Node[] msgRingNbrRight)

pingNeighbors

public void pingNeighbors()

verifyPing

public void verifyPing(peersim.skipnet.messages.Ping ping)

setLeafset

public void setLeafset(SkipnetUtil.Direction dir,
                       java.util.Vector leafset)

getLeafset

public java.util.Vector getLeafset(SkipnetUtil.Direction dir)

tryRouteOneHop

public peersim.core.Node tryRouteOneHop(SkipnetName destination)