アイデアは、apachevysperを既存のnettyアプリケーションに統合することです。クライアントからnettyに接続されているChannelBufferをmina'aChannelBufferとして接続して、vysperに委任することはできますか?
アイデアは、apache vysperのカスタムnettyベースのエンドポイントを作成し、ChanellBufferを取得して、それをvysperに渡すことです。
アイデアは、apachevysperを既存のnettyアプリケーションに統合することです。クライアントからnettyに接続されているChannelBufferをmina'aChannelBufferとして接続して、vysperに委任することはできますか?
アイデアは、apache vysperのカスタムnettyベースのエンドポイントを作成し、ChanellBufferを取得して、それをvysperに渡すことです。
私はあなたがそれを包むあなた自身のimplを書くことができると思います。または、バックアップされたbytearrayを使用して、これをラップします。
Apache Vysperは、nettyに似たノンブロッキングI/OフレームワークであるMINAを使用します。
Vysperを設計したとき、MINAを他のVysperと緊密に結合しないようにしました。したがって、理論的には、そのルートに行きたい場合は、MINAをnettyに置き換えることができるはずです。ソースコードを見ると、パッケージ https://svn.apache.org/repos/asf/mina/vysper/trunk/server/core/src/main/java/org/apacheからすべての機能を移植する必要があります。 / vysper / mina ネットに接続し、その使用法を置き換えます。それは実行可能ですが、いくつかの作業が必要です。さらに、Vypserは、XMLに基づく/XMLのサブセットであるプロトコルとしてXMPPを使用します。Vysperは、Vysperのサブプロジェクトである非ブロッキングXMLパーサー「nbxml」を使用します。(https://svn.apache.org/repos/asf/mina/vysper/trunk/nbxml)これもnettyバージョンのnbxmlに置き換える必要があります。Vysperメーリングリスト(dev@mina.apache.org)で、これについて詳しく説明することができます。
別のルートは、nettyエンドポイントを使用することであり、ノーマンが示唆したように、どういうわけかバッファをVysper/MINAに渡します。これはエレガントなアプローチのように聞こえますが、以前のアプローチよりも実現可能かどうかは疑問です。nettyにVysperのニーズに一致する非ブロッキングXMLパーサーがあるかどうかはわかりません。ネットをMINAに巻き付けるには、おそらく醜いスタントが必要になるでしょう。
最後のアドバイスは、Vypserをそのまま使用することです。MINAは、過去数年間、nettyほど多くの愛を受けていませんでしたが、それはノンブロッキングのIOフレームワークでもあります。本当にnettyに固執している場合は、それをプロキシとして使用することを検討してください。あるエンドポイントにnettyを配置し、別のエンドポイントにVysper / MINAを配置し、nettyエンドポイントで受信したバイトをVysper/MINAにルーティングします。