7.3.2. コマンドとビジター
JBoss Cache は内部でコマンドとビジターのパターンを使用し、 API 呼び出しを実行します。 キャッシュインターフェース上でメソッドが呼び出される度に
Cache インターフェースを実装する CacheInvocationDelegate が VisitableCommand のインスタンスを作成し、 このコマンドをインターセプタのチェーンへ送ります。 Visitor を実装するインターセプタは目的の VisitableCommand を処理し、 行動をコマンドに追加することができます。
各コマンドには、 使用されるパラメータや
process() メソッドにカプセル化される処理動作など、 実行されたコマンドのすべての情報が含まれます。 例えば、 Cache.removeNode() が呼び出されると RemoveNodeCommand が作成されインターセプタチェーンへ渡され、 データ構造からノードを削除するために必要な情報が RemoveNodeCommand.process() に含まれます。
コマンドはビジット可能であるだけでなく、 レプリケートも可能です。 JBoss Cache のマーシャラーは、 コマンドを効率的にマーシャリングし、 JGroups に応じて内部 RPC メカニズムを使用しリモートキャッシュインスタンス上で呼び出す方法を認識します。