ここで何をする必要があるかを理解するのに役立つ例を見つけることができなかったので、私の問題を説明します:
Pivotal の Gemfire 製品のカスタム リスナーを実装する Java Bean があります。次のようにメソッドを定義する CqListener と呼ばれるインターフェイスを実装します。
public void onEvent(CQEvent evt){
...
}
基本的に、Gemfire グリッドで連続クエリ (CQ) を実行すると、この Bean をリスナーとして登録し、クエリに一致するグリッド内の変更を受け取ります。
たとえば、次のような CQ を実行します。
SELECT * FROM /table_name
「table_name」テーブル(Gemfireではリージョンと呼ばれます)の何かが変更されるたびCQEvent
に、メソッドに aが表示されます(CRUD)onEvent
私が今やろうとしているのは、Camel を配線して、この基礎となる CQ のものからカスタム ルートに何かをルーティングすることです。とにかく、Camelに「onEventへの呼び出しが行われたときはいつでも、それを取り、別の場所にルーティングしてください」と言うことができますか?
私がルーティングしようとしている別の場所は、Akka Actor です。akka と camel ( http://doc.akka.io/docs/akka/snapshot/scala/camel.html ) をラップするプロジェクトは既にありますが、インバウンド CQ イベントを取得するためのこのエンドポイント URI ビジネスを理解できません。 .
Camel に関する概念的なキーが不足していることはわかっているので、どんな助けも大歓迎です。jmsエンドポイントを使用してこれを実装することができたので、よく知られているプロトコルでどのように機能するかを理解しましたが、実装が私から離れて抽象化されているカスタムプロトコルでこれを行う方法を理解しようとしています(そのままです) CQListenerの場合)