private void reject(Message message) { EmptyMessage rst = EmptyMessage.newRST(message); // sending directly through connector, not stack, thus set token rst.setToken(new byte[0]); for (MessageInterceptor interceptor:interceptors) interceptor.sendEmptyMessage(rst); // MessageInterceptor might have canceled if (!rst.isCanceled()) connector.send(serializer.serialize(rst)); }
@Override public void sendEmptyMessage(Exchange exchange, EmptyMessage message) { if (message.getDestination() == null) throw new NullPointerException("Message has no destination address"); if (message.getDestinationPort() == 0) throw new NullPointerException("Message has no destination port"); matcher.sendEmptyMessage(exchange, message); /* * Logging here causes significant performance loss. * If necessary, add an interceptor that logs the messages, * e.g., the MessageTracer. */ for (MessageInterceptor interceptor:interceptors) interceptor.sendEmptyMessage(message); // MessageInterceptor might have canceled if (message.isCanceled()) { if (null != exchange) { exchange.setComplete(); } } else { connector.send(serializer.serialize(message)); } } }
@Override public void sendEmptyMessage(Exchange exchange, EmptyMessage message) { assertMessageHasDestinationAddress(message); matcher.sendEmptyMessage(exchange, message); /* * Logging here causes significant performance loss. * If necessary, add an interceptor that logs the messages, * e.g., the MessageTracer. */ for (MessageInterceptor interceptor:interceptors) { interceptor.sendEmptyMessage(message); } // MessageInterceptor might have canceled if (message.isCanceled()) { if (null != exchange) { exchange.setComplete(); } } else { connector.send(serializer.serializeEmptyMessage(message)); } }
rst.setDestinationPort(raw.getPort()); for (MessageInterceptor interceptor:interceptors) interceptor.sendEmptyMessage(rst); connector.send(serializer.serialize(rst)); log.append(" and reset");