|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
ucr.core.Router
Routes messages read from the network to appropriate Connections
Field Summary | |
private ConnectionList |
connectionList
|
HostCache |
hostCache
|
private java.util.Hashtable |
keywordsRouteTable
|
private static int |
MAX_ROUTER_TABLE
|
private static byte |
MAX_TTL
|
private BoundedQueue |
messageQueue
|
ProfileTableMng |
mng
|
private OriginateTable |
originateTable
|
(package private) long |
queriesRoutedCount
|
RouteTable |
queryHitRouteTable
|
(package private) java.util.Hashtable |
queryMessageDEPTHTable
|
(package private) java.util.Hashtable |
queryMessageTable
|
RouteTable |
queryRouteTable
|
private java.util.Vector |
searchReceivers
|
private boolean |
shutDownFlag
|
(package private) int |
WINDOW
|
Fields inherited from class java.lang.Thread |
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
(package private) |
Router(ConnectionList connectionList,
HostCache hostCache)
Collection of active connections to the network |
Method Summary | |
(package private) void |
addSearchMessageReceiver(MessageReceiver receiver)
Adds a search listener |
(package private) boolean |
allVisited(boolean[] ConnectionWasVisited)
|
(package private) void |
fireQueryMessage(SearchMessage searchMessage)
Sends a search message to listeners |
(package private) void |
fireSearchMessage(SearchMessage searchMessage)
Sends a search message to listeners |
(package private) void |
fireSearchReplyMessage(SearchReplyMessage searchReplyMessage,
java.lang.String host,
int port)
Sends a searchereply message to listeners |
(package private) void |
fireTraceMessage(TraceMessage traceMessage)
Sends a trace message to listeners |
(package private) int[] |
generateRandomSet(int connectioncount,
int TSIZE)
|
ConnectionList |
getConnectionList()
|
(package private) RouteMessage |
getNextMessage()
Query the next message to route, blocks if no message are available |
(package private) NodeConnection[] |
getNumberHighestPeerSet(java.util.List connections,
int number,
RouteMessage message)
|
(package private) NodeConnection |
getQuerySource(SearchMessage message)
Get the source of a previously received message query message |
(package private) int |
getSmallestIdx(long[] intarray)
|
void |
initProfileMng(int PSIZE)
|
private void |
local_println(java.lang.String str)
|
(package private) void |
prepareMessage(Message message)
Updates a message for sending |
(package private) void |
removeMessageSender(java.util.List messageGUIDs)
Removes a message sender's origination data |
(package private) void |
removeSearchMessageReceiver(MessageReceiver receiver)
Removes a search receiver |
(package private) boolean |
route(Message m,
NodeConnection connection)
Routes a message, used by Connections |
(package private) void |
routeBack(Message m,
MessageReceiver receiver)
Record a message we originate, so we can route it back |
(package private) void |
routeBFSQuery(RouteMessage m)
|
(package private) void |
routeGreatestResultsQuery(RouteMessage m)
|
(package private) void |
routeQueryReplyMessage(RouteMessage m)
|
(package private) void |
routeRandomBFSQuery(RouteMessage m)
|
(package private) boolean |
routerSend(Connection connection,
Message message)
Utility method for common send |
void |
run()
Runs along routing messages |
boolean |
shouldProceed(Message message)
shouldProceed(Message) : Checks if this message was forwarded in past (based on GUID). |
(package private) void |
shutdown()
Stops the operation of the router |
Methods inherited from class java.lang.Thread |
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
private static int MAX_ROUTER_TABLE
private static byte MAX_TTL
private ConnectionList connectionList
public HostCache hostCache
public RouteTable queryRouteTable
private java.util.Hashtable keywordsRouteTable
public RouteTable queryHitRouteTable
private OriginateTable originateTable
private java.util.Vector searchReceivers
private BoundedQueue messageQueue
private boolean shutDownFlag
public ProfileTableMng mng
java.util.Hashtable queryMessageTable
java.util.Hashtable queryMessageDEPTHTable
long queriesRoutedCount
int WINDOW
Constructor Detail |
Router(ConnectionList connectionList, HostCache hostCache)
connectionList
- the list of connections in the systemhostCache
- which contains this peer's neighborsMethod Detail |
public ConnectionList getConnectionList()
public void initProfileMng(int PSIZE)
public boolean shouldProceed(Message message)
void shutdown()
private void local_println(java.lang.String str)
void prepareMessage(Message message)
message
- message to updateboolean route(Message m, NodeConnection connection)
void routeBack(Message m, MessageReceiver receiver)
void removeMessageSender(java.util.List messageGUIDs)
messageGUIDs
- the originated message guidsvoid addSearchMessageReceiver(MessageReceiver receiver)
receiver
- search receivervoid removeSearchMessageReceiver(MessageReceiver receiver)
receiver
- message receiverRouteMessage getNextMessage()
public void run()
NodeConnection getQuerySource(SearchMessage message)
message
- a search messagevoid routeBFSQuery(RouteMessage m)
void routeRandomBFSQuery(RouteMessage m)
int[] generateRandomSet(int connectioncount, int TSIZE)
boolean allVisited(boolean[] ConnectionWasVisited)
int getSmallestIdx(long[] intarray)
void routeGreatestResultsQuery(RouteMessage m)
NodeConnection[] getNumberHighestPeerSet(java.util.List connections, int number, RouteMessage message)
void routeQueryReplyMessage(RouteMessage m)
boolean routerSend(Connection connection, Message message)
connection
- connectionmessage
- messagevoid fireTraceMessage(TraceMessage traceMessage)
traceMessage
- trace message to sendvoid fireQueryMessage(SearchMessage searchMessage)
searchMessage
- search message to sendvoid fireSearchReplyMessage(SearchReplyMessage searchReplyMessage, java.lang.String host, int port)
searchReplyMessage
- message to sendhost
- the host which sent this reply messageport
- of the host that sent this reply messagevoid fireSearchMessage(SearchMessage searchMessage)
searchMessage
- search message to send
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |