我正在学习netty,示例中有以下代码
ChannelPipeline pipeline = pipeline();
// Enable stream compression (you can remove these two if unnecessary)
pipeline.addLast("deflater", new ZlibEncoder(ZlibWrapper.GZIP));
pipeline.addLast("inflater", new ZlibDecoder(ZlibWrapper.GZIP));
// Add the number codec first,
pipeline.addLast("decoder", new BigIntegerDecoder());
pipeline.addLast("encoder", new NumberEncoder());
// and then business logic.
// Please note we create a handler for every new channel
// because it has stateful properties.
pipeline.addLast("handler", new FactorialServerHandler());
我的问题是在哪里可以看到 addLast 方法的有效第一个参数列表,例如 deflater、inflater、解码器、编码器、处理程序等。
而且我在源代码中找不到实现映射的位置。这里我的意思是消息到达,ChannelPipeline 检查是否设置了放气器并调用 ZlibEncoder.GZIP 方法。