建立自訂元件
「通用日誌配接器」提供許多可用來建立配接器的預先定義元件,
以處理應用程式日誌檔。如果那些元件不符合您的需求,
新增可以內含在配接器配置檔之環境定義中的自訂元件,
便可擴充「通用日誌配接器」。
請遵循下列步驟來建立自訂元件:
開發您自己的通用日誌時,如果想要參照「通用日誌配接器」程式碼,
請從「 Eclipse CVS 儲存庫」移出 org.eclipse.hyades.logging.adapter 外掛程式專案。如果要這樣做:
- 開啟「CVS 儲存庫探索」視景。
- 用滑鼠右鍵按一下「CVS 儲存庫」窗格,然後選取新增 > 儲存庫位置。
- 請輸入「主機」dev.eclipse.org,「儲存庫路徑」/home/tools,「使用者」anonymous。
- 按一下完成。這時會新增新的儲存庫位置。
- 在新的儲存庫位置下,展開 HEAD 節點。
- 用滑鼠右鍵按一下 org.eclipse.hyades.logging.adapter 專案,然後選取移出。
該專案會建立在您的工作區中。
您需要為新元件建立包含程式碼的 Java 類別:
- 建立一個外掛程式專案,以包含新元件。
- 在專案中建立 Java 類別。新元件應該視其角色,實作下列其中一個連結,這些連結是在 org.eclipse.hyades.logging.adapter 套件中定義的:
- IProcessUnit
- 以執行元件處理程序的方法延伸 IComponent。
「物件」陣列在元件之間互傳,因此,主要處理方法 (processEventItems) 將「物件」的陣列視為輸入,並傳回「物件」的陣列。
所有元件必須實作 IProcessUnit。IComponent 包括所有元件內容的 getter 和 setter 方法,
其為從配置取得元件內容的更新方法,以及啟動和停止元件的方法。
- ISensor
- 延伸 IProcessUnit。應在實作感應器元件時使用。getNext 方法會傳回感應中程式碼的下一個資料集束。
沖寫方法會沖寫被感應器快取之程式碼的所有剩餘資料。這個連結也包含感應器類型的 getter 和 setter 方法,
如同感應器綱目檔 sensor.xsd 中所定義。
- IExtractor
- 延伸 IProcessUnit。應在實作擷取器元件時使用。
因為感應器一般把資料以字串的方式傳回擷取器,然後擷取器再
從這些字串中擷取完整的訊息,所以,輸入「字串」陣列,並傳回 MessageString 物件的陣列時,
擷取器必須實作 processStrings 方法。
org.eclipse.hyades.logging.adapter 套件中,也有定義 MessageString 類別 。
- IParser
- 延伸 IProcessUnit。應在實作剖析器元件時使用。
- IFormatter
- 延伸 IProcessUnit。應在實作格式製作器元件時使用。
- IOutputter
- 延伸 IProcessUnit。應在實作輸出器元件時使用。
建立新元件類別的另一個方法是,延伸 org.eclipse.hyades.logging.adapter.impl 套件中 IComponent、IProcessUnit、ISensor 和 IExtractor
的預設實作類別。
org.eclipse.hyades.logging.adapter 專案中,有與元件套件相關的元件範例。
- 完成程式碼後,請儲存變更。
因為您正在延伸「通用日誌配接器」類別,因此,您必須把「通用日誌配接器」
外掛程式及其相依關係併入您的外掛程式中。
- 開啟 plugin.xml 檔,然後新增下列相依關係:
org.eclipse.hyades.logging.adapter
org.eclipse.hyades.logging.core
如果要將您的外掛程式配置成「通用日誌配接器」的元件延伸規格,請執行下列步驟:
- 將下列延伸規格新增至 plugin.xml 檔:
<extension
point="org.eclipse.hyades.logging.adapter.adapterComponent">
<componentClassname
name="executable_class_name">
</componentClassname>
</extension>
其中 executable_class_name 是建立來實作新「通用日誌配接器」元件的 Java 類別名稱。
- 儲存 plugin.xml 檔。
相關作業
測試自訂元件
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.