您可以實作自訂過濾器外掛程式。
執行這項作業的原因和時機
如果您要使用您所屬的過濾引擎作為發射器過濾器,
可以遵循下列步驟來實作自訂的過濾器外掛程式:
這項作業的步驟
- 將過濾器外掛程式開發成實作 com.ibm.events.filter.Filter 介面的 Java 類別。 這個介面定義下列方法:
- isEventEnabled(CommonBaseEvent)
- 傳回 Boolean 值,
這個值指出指定的事件是否通過過濾準則。每次將事件送出給發射器時,
發射器就呼叫這個方法,傳遞送出的事件。如果回覆值是 true,
發射器會將事件傳送給事件伺服器以進行永久儲存和分送。
如果回覆值是 false,則發射器會捨棄事件。
- getMetaData()
- 傳回過濾器外掛程式的相關資訊,如:提供者名稱和版本號碼。
- close()
- 釋出過濾器外掛程式使用的所有資源。在呼叫發射器的 close() 方法時,會呼叫這個方法。
- 開發實作 com.ibm.events.filter.FilterFactory 介面的過濾器 Factory 類別。 這個介面會定義單一 getFilter() 方法,它會傳回 filter 類別的實例(Filter 介面的實作)。
- 將過濾器 Factory 的實例連結至 JNDI 名稱空間中。 在起始設定期間,發射器會執行 JNDI 查閱來存取過濾器 Factory。
- 在 WebSphere ESB 管理主控台中,修改發射器 Factory 設定檔或建立新的設定檔。 在過濾器 Factory JNDI 名稱欄位中,指定 FilterFactory 實作的 JNDI 名稱。如需關於發射器 Factory 設定檔的詳細資訊,
請參閱管理主控台的線上說明。
結果
當您使用指定過濾器 Factory 的發射器 Factory 設定檔建立發射器時,
新的發射器會使用您過濾器實作的實例。現在您可以利用標準發射器介面來傳送事件,這時會使用您的過濾器外掛程式。