public String toString() { StringBuffer buf = new StringBuffer("RpcMessage["); buf.append(super.toString()); buf.append("] rpcId="); buf.append(Arrays.toString(rpcId)); buf.append("; uuid="); buf.append(Arrays.toString(uuid)); buf.append("; msg="); buf.append(message); return buf.toString(); }
public void messageReceived(ChannelMessage msg) { if (okToProcess(msg.getOptions())) { if (msg.getMessage().getLength() == (START_DATA.length + msg.getUniqueId().length + END_DATA.length) && Arrays.contains(msg.getMessage().getBytesDirect(), 0, START_DATA, 0, START_DATA.length) && Arrays.contains( msg.getMessage().getBytesDirect(), START_DATA.length + msg.getUniqueId().length, END_DATA, 0, END_DATA.length)) { UniqueId id = new UniqueId( msg.getMessage().getBytesDirect(), START_DATA.length, msg.getUniqueId().length); MapEntry original = (MapEntry) messages.get(id); if (original != null) { super.messageReceived(original.msg); messages.remove(id); } else log.warn( "Received a confirmation, but original message is missing. Id:" + Arrays.toString(id.getBytes())); } else { UniqueId id = new UniqueId(msg.getUniqueId()); MapEntry entry = new MapEntry((ChannelMessage) msg.deepclone(), id, System.currentTimeMillis()); messages.put(id, entry); } } else { super.messageReceived(msg); } }