23.7. 例
キー/値を名前付きキャッシュに入れます。
from("direct:start") .setHeader(InfinispanConstants.OPERATION).constant(InfinispanOperation.PUT) (1) .setHeader(InfinispanConstants.KEY).constant("123") (2) .to("infinispan:myCacheName&cacheContainer=#cacheContainer"); (3)from("direct:start") .setHeader(InfinispanConstants.OPERATION).constant(InfinispanOperation.PUT) (1) .setHeader(InfinispanConstants.KEY).constant("123") (2) .to("infinispan:myCacheName&cacheContainer=#cacheContainer"); (3)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は以下のようになります。
- 1 - 実行する操作を設定する
- 2 - キャッシュ内の要素を識別するために使用されるキーを設定します
3 - レジストリーから設定されたキャッシュマネージャー
cacheContainerを使用して、myCacheNameという名前のキャッシュに要素を配置します。次の例のように、エントリーの有効期限が切れてキャッシュから削除されるまでの有効期間および/またはアイドル時間を設定できます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ここで、
- 1 - エントリーの寿命を設定します
- 2 - 寿命の時間単位を設定します
クエリー
ドメインオブジェクトの .proto 記述子は、リモート Data Grid サーバーに登録する必要があります。公式の Infinispan ドキュメントの リモートクエリーの例 を参照してください。
カスタムリスナー
from("infinispan://?cacheContainer=#cacheManager&customListener=#myCustomListener")
.to("mock:result");
from("infinispan://?cacheContainer=#cacheManager&customListener=#myCustomListener")
.to("mock:result");
myCustomListener のインスタンスが存在する必要があり、Camel は Registry からそれを検索できる必要があります。ユーザーは org.apache.camel.component.infinispan.remote.InfinispanRemoteCustomListener クラスを拡張し、結果のクラスに @ClientListener でアノテーションを付けることをお勧めします。これはパッケージ org.infinispan.client.hotrod.annotation にあります。