/** * A utility method for {@link RoutingRuntime RoutingRuntime} users. Confirm whether the target is * alive or not by sending a PING message. */ public boolean ping(MessageSender sender, IDAddressPair target) throws IOException { Message ret = sender.sendAndReceive(target.getAddress(), new PingMessage()); if (!(ret instanceof AckMessage)) { logger.log(Level.WARNING, "Received message should be ACK, but it is: " + ret.getName()); return false; } this.algorithm.touch(target); return true; }