org.xlattice
Interface Node

All Superinterfaces:
java.lang.Runnable

public interface Node
extends java.lang.Runnable

A Node is uniquely identified by a NodeID and can satisfy an identity test constructed using its public key. That is, it can prove that it holds the private key materials corresponding to the public key. XXX A Node also participates in some number of Overlays and will XXX usually have a number of Peers. This interface needs to be XXX elaborated.

Author:
Jim Dixon

Method Summary
 Node addConnection(Connection v)
           
 Node addOverlay(Overlay v)
           
 Node addPeer(Peer v)
           
 Connection getConnection(int n)
           
 NodeID getNodeID()
           
 Overlay getOverlay(int n)
           
 Peer getPeer(int n)
           
 PublicKey getPublicKey()
           
 DigSigner getSigner()
           
 Connection removeConnection(Connection v)
           
 Overlay removeOverlay(Overlay v)
           
 Peer removePeer(Peer v)
           
 void run()
           
 int sizeConnections()
           
 int sizeOverlays()
           
 int sizePeers()
           
 

Method Detail

getNodeID

NodeID getNodeID()
Returns:
the 20-byte/160-bit node ID

getPublicKey

PublicKey getPublicKey()
Returns:
the public key associated with the Node

getSigner

DigSigner getSigner()
                    throws CryptoException
Returns:
a DigSigner used to make digital signatures
Throws:
CryptoException

addOverlay

Node addOverlay(Overlay v)

getOverlay

Overlay getOverlay(int n)

removeOverlay

Overlay removeOverlay(Overlay v)

sizeOverlays

int sizeOverlays()

addPeer

Node addPeer(Peer v)

getPeer

Peer getPeer(int n)

removePeer

Peer removePeer(Peer v)

sizePeers

int sizePeers()

addConnection

Node addConnection(Connection v)

getConnection

Connection getConnection(int n)

removeConnection

Connection removeConnection(Connection v)

sizeConnections

int sizeConnections()

run

void run()
Specified by:
run in interface java.lang.Runnable