|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
com.bbn.openmap.graphicLoader.netmap.NetMapReader
public class NetMapReader
The NetMapReader is the class that makes actual contact with the NetMap server and maintains the connection to it. It is controlled by the NetMapConnector, and is created by it as well. The NetMapReader understands that the NetMap server maintains a notion of views, and that to get information from the server, it has to request information about a particular view. Luckily, a list of views can be requested from the server as well.
The NetMap server will provide a text output stream of lines, with each line representing an event. The NetMapReader has an implicit understanding of the format of different line types, and creates a java Properties object for each line, categorizing each field, and putting it in the Properties object as (Field Header key, Field value). This Properties object is sent to the NetMapConnector, where it is distributed to the NetMapEventListeners. Each NetMapEventListener is free to peruse the Properties object in the event, and get information it needs from each one by asking for specific field values. Some fields may not be present in all Properties objects, but the fields should be consistent for the same event type. At some point, we'll include a description of the events and the fields that can be expected. In general, there are two things you can do. First, you can create a NetMapReader without a view, and then call getViewList() on it to get a list of possible views. The NetMapReader will disconnect itself after that request. Second, you can create a NetMapReader with a specific view (or set the view later), and then call start() on it to begin receiving events about that view. Call disconnect() when you want it to stop.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.lang.Thread |
---|
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler |
Field Summary |
---|
Fields inherited from class java.lang.Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Fields inherited from interface com.bbn.openmap.graphicLoader.netmap.NetMapConstants |
---|
CLEAR, COMMAND_FIELD, DATABASE_TAG_FIELD, DEFAULT_PORT, DEFAULT_SERVER, ELEVATION_FIELD, ERROR_VALUE_DOUBLE, ERROR_VALUE_FLOAT, ERROR_VALUE_INT, HEIGHT_FIELD, ICON_FIELD, INDEX_FIELD, IP_FIELD, JMAP_VIEW_CMD, JOFFSET_FIELD, LABEL_FIELD, LAT_FIELD, LINE_DELETE, LINE_DELETE_STRING, LINK_NODE1_FIELD, LINK_NODE2_FIELD, LINK_OBJECT, LINK_OBJECT_STATUS, LON_FIELD, MENU_FIELD, NAME_FIELD, NODE_DELETE, NODE_DELETE_STRING, NODE_MOVE, NODE_MOVE_STRING, NODE_OBJECT, NODE_OBJECT_STATUS, POSX_FIELD, POSY_FIELD, REFRESH, SHAPE_FIELD, STATUS_FIELD, TIME_FIELD, UPDATE, WIDTH_FIELD |
Constructor Summary | |
---|---|
NetMapReader(java.lang.String host,
java.lang.String port,
NetMapConnector connector)
Create a NetMapReader to listen to a host on a port, with a NetMapConnector to get back in touch with. |
|
NetMapReader(java.lang.String host,
java.lang.String port,
NetMapConnector connector,
java.lang.String view)
Create a NetMapReader to listen to a NetMapServer running on a port, and parse the stream relating information about the given view. |
Method Summary | |
---|---|
protected java.lang.String |
getVal(java.lang.String marker,
java.lang.String line)
|
ChoiceList |
getViewList(java.lang.String host,
java.lang.String port)
For an established NetMapReader, get the list of views that the NetMapReader knows about. |
protected java.lang.Object |
next()
Break the next token into an Object. |
protected java.util.Properties |
procline(java.lang.String cmdline)
Process a line from NetMap input stream. |
void |
run()
Called when NetMapReader.start() is called. |
void |
setView(java.lang.String view)
Set the view that will be requested when the reader is started, via reader.start(). |
void |
shutdown()
A queue command that lets the NetMapReader know to disconnect when it has the opportunity to. |
protected java.util.Vector |
tokenize(java.lang.String line)
Given a line, break it up into a Vector representing the String parts, and the int[] containing the number parts. |
protected java.lang.Object |
unit()
Break the next token into an Object, with some addition semantic functionality to interpret EOF and parenthesis. |
protected void |
unitInit(java.io.StringReader rdr)
Initialize the StringTokenizer. |
Methods inherited from class java.lang.Thread |
---|
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public NetMapReader(java.lang.String host, java.lang.String port, NetMapConnector connector) throws java.io.IOException
java.io.IOException
public NetMapReader(java.lang.String host, java.lang.String port, NetMapConnector connector, java.lang.String view) throws java.io.IOException
java.io.IOException
Method Detail |
---|
public void setView(java.lang.String view)
public ChoiceList getViewList(java.lang.String host, java.lang.String port)
public void shutdown()
public void run()
run
in interface java.lang.Runnable
run
in class java.lang.Thread
protected java.util.Properties procline(java.lang.String cmdline)
protected java.util.Vector tokenize(java.lang.String line)
protected void unitInit(java.io.StringReader rdr)
protected java.lang.Object unit()
protected java.lang.Object next()
protected java.lang.String getVal(java.lang.String marker, java.lang.String line)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |