ChannelInboundHandler
ChannelOutboundHandler extends ChannelHandler
其中比较重要的ChannelInitializer
initChannel
将自定义的handler 添加到pipeline
new ChannelInitializer<SocketChannel>() {
@Override
protected void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
p.addLast(new IdleStateHandler(5, 0, 0, TimeUnit.SECONDS));
p.addLast(new StringDecoder());
p.addLast(new StringEncoder());
p.addLast(new HeartBeatServerHandler());
}
}
HeartBeatServerHandler
同样实现 ChannelInboundHandlerAdapter
userEventTriggered(ChannelHandlerContext, Object evt)
IdleStateEvent event = (IdleStateEvent) evt;
参数是由 AllIdleTimeoutTask 线程传过来
ChannelOutboundHandler
ChannelOutboundHandler extends ChannelHandler
、
事件触发器,根据不同的事件触发对应的操作。