public class SimpleClientHandler extends ChannelInboundHandlerAdapter {\r
\r
protected static final Logger LOGGER = LoggerFactory.getLogger(SimpleClientHandler.class);\r
- private static final int OFP_HEADER_LENGTH = 8;\r
+ private static final int LENGTH_INDEX_IN_HEADER = 2;\r
private SettableFuture<Boolean> isOnlineFuture;\r
protected ScenarioHandler scenarioHandler;\r
\r
\r
@Override\r
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {\r
- LOGGER.info("SimpleClientHandler - start of read");\r
ByteBuf bb = (ByteBuf) msg;\r
if (LOGGER.isDebugEnabled()) {\r
LOGGER.debug("<< " + ByteBufUtils.byteBufToHexString(bb));\r
}\r
- \r
- if (bb.readableBytes() < OFP_HEADER_LENGTH) {\r
- LOGGER.debug("too few bytes received: "+bb.readableBytes()+" - wait for next data portion");\r
- return;\r
- }\r
- int msgSize = bb.getUnsignedShort(2);\r
- byte[] message = new byte[msgSize];\r
+ int length = bb.getUnsignedShort(LENGTH_INDEX_IN_HEADER);\r
+ LOGGER.info("SimpleClientHandler - start of read");\r
+ byte[] message = new byte[length];\r
bb.readBytes(message);\r
scenarioHandler.addOfMsg(message);\r
LOGGER.info("end of read");\r