2013-08-20 17 views
0

所以在Netty 3.x庫中,類ChannelHandlerContext有一個名爲setAttachment的方法。不幸的是,它似乎並不存在於新的4.0庫中。我想知道是否有辦法像老年人圖書館那樣提供附件。ChannelHandlerContext setAttachment方法

回答

4

做了一些研究之後,我發現了以下內容:接口org.jboss.netty.channel.ChannelHandlerContext

的javadoc在版本3.2狀態

存儲狀態信息

setAttachment(Object)getAttachment()讓你存儲和訪問與處理程序及其上下文相關的有狀態信息。請參閱ChannelHandler以瞭解各種推薦的管理有狀態信息的方法。

而對於io.netty.channel.ChannelHandlerContext在版本4.0這顯然代替3.x版本的org.jboss.netty.channel.ChannelHandlerContext狀態存儲狀態信息

AttributeMap.attr(AttributeKey)允許你存儲和訪問的Javadoc Storing stateful information

以下與處理程序及其上下文相關的有狀態信息。請參閱ChannelHandler以瞭解各種推薦的管理有狀態信息的方法。

看來,3.x版本的Attachments現在使用Attribute<T>處理(generics而不是Object!)版本4.0

所以,你需要做一下AttributeMap.attr(AttributeKey)以及其中規定

的例子

//該處理程序將接收從1開始的遞增整數序列。

在這兩個版本的javadoc中給出ChannelHandlerContext

我希望這可以幫助您找到使用新API編寫您的需求的方法。

+0

它的工作效果很好。我還有一個問題,那就是我想切換到新API以查看是否有錯誤的主要原因。 客戶端不保持連接到服務器。我不知道爲什麼。 – PointyStorm

+0

@PointyStorm好吧,這是另一個我不幸幫不了忙的問題:(你可能想關閉這個問題並用[sscce](http://sscce.org/)發佈另一個問題,以幫助你解決你的問題。 – A4L

相關問題