// add or update the last-seen time of the Sender host in the known services map
LastSeenHost host = new LastSeenHost((InetSocketAddress)packetReceive.getSocketAddress());
- this._serviceToHostMap.replace(messageReceived.getSender(), host);
+ this._serviceToHostMap.put(messageReceived.getSender(), host);
+ log(Level.FINEST, _title, MessageFormat.format("Added \"{0}\" to service map", messageReceived.getSender()));
- /* TODO: serverListen() message may be an ACKnowledgement which shouldn't be pubished...
- * But it might be useful to keep track of ACKs in a separate queue that the owner thread can query to check
- * a message was delivered
- */
// pass the message to the process() method in the Owner Thread
publish(messageReceived);
- // create and send an acknowledgement of receipt
- NetworkMessage ack = NetworkMessage.createNetworkMessage("ACK", messageReceived.getSender(), null);
- serverSend(ack);
-
- // FIXME: serverListen() can this block be deleted now its handled by serverSend() ?
- /*
- try {
- byte[] dataAck = NetworkMessage.serialize(ack);
- DatagramPacket packetAck = new DatagramPacket(dataAck, dataAck.length);
-
- // extract remote host address and port for sending acknowledgement
- packetAck.setAddress(packetReceive.getAddress());
- packetAck.setPort(packetReceive.getPort());
-
- // acknowledge receipt
- this.getSocket().send(packetAck);
-
-
- } catch (IOException e) {
- // TODO: serverListen() fill in IOException blank log message
- log(Level.WARNING, _title, "", null);
- }
- */
-
result = true; // successful
}
* Deeper sub-classes must be listed before their super classes
*/
// TODO: serverListen() add ObjectStreamException handler
+ System.err.println("ObjectStreamException");
} catch (IOException e) {
// TODO: serverListen() add IOException handler
+ System.err.println("IOException");
} catch (ClassNotFoundException e) {
// TODO: serverListen() add ClassNotFoundException handler
+ System.err.println("ClassNotFoundException");
}
return result;
// acknowledge receipt
this.getSocket().send(packetSend);
+ log(Level.FINEST, _title,
+ MessageFormat.format("Sending packet for {0} to {1} ({3}:{4}) from {2}",
+ message.getIntent(),
+ message.getTarget(),
+ message.getSender(),
+ packetSend.getAddress().getHostAddress(),
+ packetSend.getPort()
+ )
+ );
result = true; // successful
} catch (IOException e) {