package com.zy.gateway.pipeline;
|
|
import io.netty.channel.Channel;
|
import io.netty.channel.ChannelHandler;
|
import io.netty.channel.ChannelInitializer;
|
import io.netty.handler.timeout.IdleStateHandler;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
|
/**
|
* handler管道
|
* 控制所有netty handler流向
|
* 待完成: 动态管理handler
|
* Created by vincent on 2019-04-02
|
*/
|
@Component
|
@ChannelHandler.Sharable
|
public class HandlerInitializer extends ChannelInitializer<Channel> {
|
|
@Autowired
|
private PipelineProperties pipelineProperties;
|
|
/**
|
* Set some channel handlers on channel pipeline
|
*/
|
@Override
|
protected void initChannel(Channel channel) {
|
channel.pipeline()
|
// 心跳
|
.addLast(new IdleStateHandler(pipelineProperties.getHeartSeconds(), 0, 0))
|
// // 编码器
|
// .addLast(protocolEncoder)
|
// // 解码器
|
// .addLast(new ProtocolDecoder(4096))
|
// // 校验码处理器
|
// .addLast(validateHandler)
|
// // 认证处理器
|
// .addLast(vehAuthHandler)
|
// // 业务处理器
|
// .addLast(gbPackageServerHandler)
|
// // 通道保护器
|
// .addLast(protectorHandler)
|
;
|
|
// Channel局部变量,相当于线程的ThreadLocal
|
// initAttrTrack(channel);
|
}
|
|
|
}
|