因此在Netty 3.x库中,类ChannelHandlerContext有一个名为setAttachment的方法。不幸的是,它似乎不存在于新的4.0库中。我想知道是否有办法将附件放在较旧的库上。
答案 0 :(得分:4)
经过一番研究后,我发现了以下内容:
版本3.2
状态中接口org.jboss.netty.channel.ChannelHandlerContext的javadoc
存储有状态信息
setAttachment(Object)和getAttachment()允许您存储和访问与处理程序及其上下文相关的有状态信息。请参阅ChannelHandler以了解管理有状态信息的各种推荐方法。
版本4.0
中io.netty.channel.ChannelHandlerContext的javadocs显然取代了版本3.x的org.jboss.netty.channel.ChannelHandlerContext
,表明了Storing stateful information
存储有状态信息
AttributeMap.attr(AttributeKey)允许您存储和访问与处理程序及其上下文相关的有状态信息。请参阅ChannelHandler以了解管理有状态信息的各种推荐方法。
版本3.x的Attachments
似乎现在使用Attribute<T>(generics
代替Object
!)来处理版本4.0
所以你需要看看AttributeMap.attr(AttributeKey)以及陈述
的例子//此处理程序将从1开始接收一系列递增的整数。
在两个版本的ChannelHandlerContext
的javadoc中给出。
我希望这可以帮助您找到使用新API编写需求的方法。