public void messageReceived(ChannelHandlerContext ctx, MessageEvent e)
throws Exception {
logger.debug("messageReceived {},, {}", ctx, e);
assert connection == e.getChannel();
ChannelBuffer input = (ChannelBuffer) e.getMessage();
int len = input.readUnsignedByte();
int whichClient = input.readUnsignedShort();
assert len == input.readableBytes();
logger.debug("From {}, '{}'", whichClient, input.toString(Charset.defaultCharset()));
queue.put(new DataEvent(EventSource.kBackend, whichClient, input));
}