JavaTM 2 Platform
Standard Ed. 6

org.omg.PortableServer
介面 ServantLocatorOperations

所有父級介面:
ServantManagerOperations
所有已知子介面:
ServantLocator
所有已知實作類別:
_ServantLocatorStub, ServantLocatorPOA

public interface ServantLocatorOperations
extends ServantManagerOperations

當 POA 具有 NON_RETAIN 策略時,使用 ServantLocator 這種 servant 管理器。因為 POA 瞭解此 servant 管理器返回的 servant 只用於單個請求,所以它可以向 servant 管理器的操作提供額外的資訊,從而一對該 servant 管理器的操作也許能共同執行某些不同於 ServantActivator 的操作。POA 使用 ServantLocator 介面時,對 preinvoke 返回的 servant 調用該操作後,POA 將立即對 servant 管理器調用 postinvoke,同時將 ObjectId 值和 Servant 值(及其他值)作為參數傳遞。servant 管理器可以使用這一功能來強制調停每個對關聯 POA 的物件的請求。


方法摘要
 void postinvoke(byte[] oid, POA adapter, String operation, Object the_cookie, Servant the_servant)
          servant 完成請求時都將調用此操作。
 Servant preinvoke(byte[] oid, POA adapter, String operation, CookieHolder the_cookie)
          此操作用來獲取一個 servant,該 servant 將用來處理導致預調用 preinvoke 的請求。
 

方法詳細資訊

preinvoke

Servant preinvoke(byte[] oid,
                  POA adapter,
                  String operation,
                  CookieHolder the_cookie)
                  throws ForwardRequest
此操作用來獲取一個 servant,該 servant 將用來處理導致預調用 preinvoke 的請求。

參數:
oid - 關聯所請求物件的物件 Id。
adapter - 將啟動物件的 POA 的參考。
operation - 操作名稱。
the_cookie - 一個不透明值,可由調用 postinvoke 期間使用的 servant 管理器設置。
返回:
用來處理傳入請求的 Servant。
拋出:
ForwardRequest - 指示 ORB 負責將當前請求和後續請求傳遞給異常的向前參考 (forward_reference) 成員所表示的物件。

postinvoke

void postinvoke(byte[] oid,
                POA adapter,
                String operation,
                Object the_cookie,
                Servant the_servant)
servant 完成請求時都將調用此操作。

參數:
oid - 關聯所請求物件的物件 Id。
adapter - 已啟動物件的 POA 的參考。
the_cookie - 一個套件含 preinvoke 設置的資料的透明值。
the_servant - 對關聯物件的 servant 的參考。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only