第21章 Interceptors
JBoss EAP メッセージングは、サーバーを出入りするパケットをインターセプトするインターセプターをサポートします。着信インターセプターと発信インターセプターは、それぞれサーバーに入ったり出たりするたびに呼び出されます。パケットの監査やフィルタリングなどのカスタムコードを実行することができます。インターセプターはインターセプトするパケットを修正できます。これによりインターセプターは強力になりますが、危険にさらされる可能性もあります。
21.1. インターセプターの実装 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
インターセプターでは次のインターセプターインターフェイスを実装する必要があります。
package org.apache.artemis.activemq.api.core.interceptor;
public interface Interceptor
{
boolean intercept(Packet packet, RemotingConnection connection) throws ActiveMQException;
}
返されるブール値は重要です。
- true が返されると、通常どおりプロセスが続行されます。
- false が返されると、プロセスは中止されます。また、他のインターセプターは呼び出されず、パケットはそれ以上サーバーで処理されません。
インターセプタークラスをモジュールとして JBoss EAP に追加する必要があります。詳細は、JBoss EAP設定ガイドの カスタムモジュールの作成 を参照してください。