public void processResponse(UscRemoteMessage message) {
if (message instanceof UscRemoteDataMessage) {
LOG.info("get response from remote channel, for " + message.getRouteIdentifier());
UscRemoteDataMessage temp = (UscRemoteDataMessage) message;
UscRouteIdentifier localRouteId = message.getRouteIdentifier();
LocalChannel serverChannel = getRequestSource(localRouteId);
if (serverChannel != null) {
LOG.trace("Write response to serverChannel(" + serverChannel.hashCode() + "), content "
+ new String(temp.getPayload()));
serverChannel.writeAndFlush(Unpooled.copiedBuffer(temp.getPayload()));
monitor.onEvent(new UscSessionTransactionEvent(localRouteId.getIp(), localRouteId
.getRemoteChannelType(), localRouteId.getSessionId() + "", temp.getPayload().length, 0));
} else {
LOG.error("Failed to find the server channel for routeIdentifier({}), can't process response({})!",
temp.getRouteIdentifier(), message);
}
} else {
LOG.warn("The message type is different, it can't be processed.message type is {}", message.getClass());
}
}