【发布时间】:2019-04-25 03:03:26
【问题描述】:
我正在探索如何在 SwiftNIO 的通道管道中添加多个处理程序。在 Java Netty 中,我有以下代码:
@Component
public class NettyClientFilter extends ChannelInitializer<SocketChannel> {
@Autowired
private NettyClientHandler nettyClientHandler;
@Override
protected void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline ph = ch.pipeline();
ph.addLast(new IdleStateHandler(20, 10, 0));
ph.addLast(new LengthFieldBasedFrameDecoder(1024, 0, 4, 0, 4));
ph.addLast(new ProtobufDecoder(IMessage.getDefaultInstance()));
ph.addLast(new LengthFieldPrepender(4));
ph.addLast(new ProtobufEncoder());
ph.addLast("nettyClientHandler",nettyClientHandler);
}
}
在 SwiftNIO 中,似乎没有类似“LengthFieldBasedFrameDecoder”、“ProtobufDecoder”、“LengthFieldPrepender”、“ProtobufEncoder”的类。我怎样才能在 SwiftNIO 中获得这些?
【问题讨论】: