sidnet.stack.users.marco_project.node_centric.app
Class AppP2P_electrostatic

java.lang.Object
  extended by sidnet.stack.users.marco_project.node_centric.app.AppP2P_electrostatic
All Implemented Interfaces:
JistAPI.Proxiable, JistAPI.Timeless, AppInterface, CallbackInterface

public class AppP2P_electrostatic
extends java.lang.Object
implements AppInterface, CallbackInterface


Field Summary
static long ackSequenceNumber
           
 Treap activeCharges
           
 java.util.LinkedList<java.lang.Integer> activeRoutes
           
 short electrostaticIndex
           
 boolean estimatedSourceLocation
           
 Treap knownCharges
           
 java.util.LinkedList<java.lang.Integer> pendingRoutes
           
static long querySequenceNumber
           
static long rreqSequenceNumber
          Sequence numbers
 short shortestPathIndex
           
 Coordinate snk
           
 NetAddress snkIP
           
 Coordinate src
           
 NetAddress srcIP
           
static long updateSequenceNumber
           
 Query userQuery
           
 
Constructor Summary
AppP2P_electrostatic(Node myNode, short shortestPathIndex, short electrostaticIndex, StatsCollector stats, ExperimentDataImpl experimentData, TopologyGUI topologyGUI)
          Creates a new instance of the AppP2P
 
Method Summary
 double calculateMagnitude(Coordinate src, Coordinate snk)
           
 AppInterface getAppProxy()
           
 void receive(Message msg, NetAddress src, MacAddress lastHop, byte macId, NetAddress dst, byte priority, byte ttl)
          Receive a message from network layer.
 void run()
          Run application.
 void run(java.lang.String[] args)
          Run application.
 java.util.List<java.lang.Integer> selectFirstHops(int nrOfRoutes)
           
 void sendMessage(Message msg)
           
 void sensing(java.util.List params)
           
 void setNetEntity(NetInterface netEntity)
           
 java.util.List<java.lang.Integer> shuffle(java.util.List<NodeEntry> list)
           
 void signalUserRequest()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

shortestPathIndex

public short shortestPathIndex

electrostaticIndex

public short electrostaticIndex

src

public Coordinate src

srcIP

public NetAddress srcIP

knownCharges

public Treap knownCharges

pendingRoutes

public java.util.LinkedList<java.lang.Integer> pendingRoutes

activeRoutes

public java.util.LinkedList<java.lang.Integer> activeRoutes

userQuery

public Query userQuery

snk

public Coordinate snk

snkIP

public NetAddress snkIP

estimatedSourceLocation

public boolean estimatedSourceLocation

activeCharges

public Treap activeCharges

rreqSequenceNumber

public static long rreqSequenceNumber
Sequence numbers


ackSequenceNumber

public static long ackSequenceNumber

updateSequenceNumber

public static long updateSequenceNumber

querySequenceNumber

public static long querySequenceNumber
Constructor Detail

AppP2P_electrostatic

public AppP2P_electrostatic(Node myNode,
                            short shortestPathIndex,
                            short electrostaticIndex,
                            StatsCollector stats,
                            ExperimentDataImpl experimentData,
                            TopologyGUI topologyGUI)
Creates a new instance of the AppP2P

Method Detail

run

public void run(java.lang.String[] args)
Description copied from interface: AppInterface
Run application.

Specified by:
run in interface AppInterface
Parameters:
args - command-line parameters

run

public void run()
Description copied from interface: AppInterface
Run application.

Specified by:
run in interface AppInterface

sensing

public void sensing(java.util.List params)
Specified by:
sensing in interface AppInterface

signalUserRequest

public void signalUserRequest()
Specified by:
signalUserRequest in interface CallbackInterface

receive

public void receive(Message msg,
                    NetAddress src,
                    MacAddress lastHop,
                    byte macId,
                    NetAddress dst,
                    byte priority,
                    byte ttl)
Description copied from interface: AppInterface
Receive a message from network layer.

Specified by:
receive in interface AppInterface
Parameters:
msg - message received
src - source network address
lastHop - source link address
macId - incoming interface
dst - destination network address
priority - packet priority
ttl - packet time-to-live

sendMessage

public void sendMessage(Message msg)

calculateMagnitude

public double calculateMagnitude(Coordinate src,
                                 Coordinate snk)

selectFirstHops

public java.util.List<java.lang.Integer> selectFirstHops(int nrOfRoutes)

shuffle

public java.util.List<java.lang.Integer> shuffle(java.util.List<NodeEntry> list)

setNetEntity

public void setNetEntity(NetInterface netEntity)

getAppProxy

public AppInterface getAppProxy()