package example; import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelInitializer; import io.netty.channel.socket.SocketChannel; import io.netty.handler.codec.LengthFieldBasedFrameDecoder; import io.netty.handler.codec.LengthFieldPrepender; import io.netty.handler.codec.string.StringDecoder; import io.netty.handler.codec.string.StringEncoder; import io.netty.util.CharsetUtil; class PingPongChannelInitializer extends ChannelInitializer { private ChannelHandler handler; public PingPongChannelInitializer (ChannelHandler handler) { this.handler = handler; } @Override public void initChannel (SocketChannel ch) throws Exception { ch.pipeline().addLast ( new LengthFieldBasedFrameDecoder (Integer.MAX_VALUE, 0, 2), new LengthFieldPrepender (2), new StringDecoder (CharsetUtil.UTF_8), new StringEncoder (CharsetUtil.UTF_8), handler); } }