Methods Summary |
---|
public void | addMessageType(Message prototype)
msgPrototypes.addElement(prototype);
|
protected Message | buildMessage(java.lang.String msgId)
Message msg = null;
int numMTypes = msgPrototypes.size();
for (int i = 0; i < numMTypes; i++) {
Message m = (Message)msgPrototypes.elementAt(i);
if (m.handles(msgId)) {
msg = m.newCopy();
break;
}
}
return msg;
|
public Message | readMsg()
Message msg = null;
DataInputStream din = new DataInputStream(msgIn);
String msgId = din.readUTF();
msg = buildMessage(msgId);
if (msg != null && msg.readArgs(msgIn)) {
return msg;
}
else {
return null;
}
|
public void | run()
try {
while (true) {
Message msg = readMsg();
if (msg != null) {
msg.Do();
}
}
}
// Treat an IOException as a termination of the message
// exchange, and let this message-processing thread die.
catch (IOException e) {}
|
public void | sendMsg(Message msg)
boolean success = true;
DataOutputStream dout = new DataOutputStream(msgOut);
dout.writeUTF(msg.messageID());
msg.writeArgs(msgOut);
|
public void | setStreams(java.io.InputStream in, java.io.OutputStream out)
msgIn = in;
msgOut = out;
|