|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface POAOperations
POA 物件管理物件集合的實作。POA 支持由 Object Id 標識的物件的名稱空間。POA 也支持 POA 的名稱空間。POA 都是作為現有 POA 的子 POA 創建的,這形成了始於根 POA 的分層結構。POA 物件不得輸出到其他進程,也不得使用 ORB::object_to_string 具體化。
方法摘要 | |
---|---|
void |
activate_object_with_id(byte[] id,
Servant p_servant)
此操作將指定 Object Id 與指定 servant 之間的關聯輸入 Active Object Map。 |
byte[] |
activate_object(Servant p_servant)
此操作產生一個 Object Id,並將該 Object Id 和指定的 servant 輸入 Active Object Map。 |
IdAssignmentPolicy |
create_id_assignment_policy(IdAssignmentPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
IdUniquenessPolicy |
create_id_uniqueness_policy(IdUniquenessPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
ImplicitActivationPolicy |
create_implicit_activation_policy(ImplicitActivationPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
LifespanPolicy |
create_lifespan_policy(LifespanPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
POA |
create_POA(String adapter_name,
POAManager a_POAManager,
Policy[] policies)
此操作創建一個新的 POA 作為目標 POA 的子 POA。 |
Object |
create_reference_with_id(byte[] oid,
String intf)
此操作創建一個物件參考,該參考封裝指定的 Object Id 和介面存儲資源庫 Id 值。 |
Object |
create_reference(String intf)
此操作創建一個物件參考,該參考封裝 POA 產生的 Object Id 值和指定的介面存儲資源庫 id。 |
RequestProcessingPolicy |
create_request_processing_policy(RequestProcessingPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
ServantRetentionPolicy |
create_servant_retention_policy(ServantRetentionPolicyValue value)
每個這類別操作都返回一個對具有指定值的策略物件的參考。 |
ThreadPolicy |
create_thread_policy(ThreadPolicyValue value)
每個這種操作都返回一個對具有指定值的策略物件的參考。 |
void |
deactivate_object(byte[] oid)
此操作促使在 oid 參數中指定的 ObjectId 被取消啟動。 |
void |
destroy(boolean etherealize_objects,
boolean wait_for_completion)
此操作銷毀 POA 及所有子代 POA。 |
POA |
find_POA(String adapter_name,
boolean activate_it)
如果目標 POA 是具有指定名稱的子 POA(相對於目標 POA)的父 POA,則返回該子 POA。 |
ServantManager |
get_servant_manager()
如果 POA 的 ServantRetentionPolicy 為 RETAIN,則 ServantManager 參數 (imgr) 應該支持 ServantActivator 介面。 |
Servant |
get_servant()
此操作返回與 POA 關聯的預設 servant。 |
Object |
id_to_reference(byte[] oid)
如果具有指定 Object Id 值的物件當前不是啟動狀態,則返回一個封裝啟動該物件時所用資訊的參考。 |
Servant |
id_to_servant(byte[] oid)
如果 POA 具有 RETAIN 策略並且指定的 ObjectId 存在於 Active Object Map 中,則此操作返回與 Active Object Map 中該物件關聯的 servant。 |
byte[] |
id()
此操作在 POA 的創建過程中返回該 POA 的唯一 id。 |
byte[] |
reference_to_id(Object reference)
此操作返回指定參考封裝的 Object Id 值。 |
Servant |
reference_to_servant(Object reference)
如果 POA 具有 RETAIN 策略並且指定的物件存在於 Active Object Map 中,則此操作返回與 Active Object Map 中該物件關聯的 servant。 |
byte[] |
servant_to_id(Servant p_servant)
此操作有四種可能的行為。 |
Object |
servant_to_reference(Servant p_servant)
如果在此 POA 指派的操作的上下文外調用此操作,則需要 RETAIN 策略以及 UNIQUE_ID 或 IMPLICIT_ACTIVATION 策略之一。 |
void |
set_servant_manager(ServantManager imgr)
此操作設置與 POA 關聯的預設 servant 管理器。 |
void |
set_servant(Servant p_servant)
此操作在 POA 中將指定的 servant 註冊為預設 servant。 |
AdapterActivator |
the_activator()
此屬性標識與 POA 關聯的適配器啟動器。 |
void |
the_activator(AdapterActivator newThe_activator)
此屬性標識與 POA 關聯的適配器啟動器。 |
POA[] |
the_children()
此屬性標識 POA 的所有子 POA 的當前設置。 |
String |
the_name()
此屬性標識相對於其父 POA 的 POA。 |
POA |
the_parent()
此屬性標識 POA 的父 POA。 |
POAManager |
the_POAManager()
此屬性標識與 POA 關聯的 POA 管理器。 |
方法詳細資訊 |
---|
POA create_POA(String adapter_name, POAManager a_POAManager, Policy[] policies) throws AdapterAlreadyExists, InvalidPolicy
adapter_name
- 標識新的 POA(就其他具有相同父 POA 的 POA 而言)。a_POAManager
- 指示與新 POA 關聯的 POA 管理器。policies
- 指示與將與 POA 關聯以控制其行為的策略物件。
AdapterAlreadyExists
- 指示目標 POA 已經有一個具有指定名稱的子 POA。
InvalidPolicy
- 策略物件中存在對 ORB 無效的策略、存在衝突,或要求未執行的管理動作時引發。POA find_POA(String adapter_name, boolean activate_it) throws AdapterNonExistent
adapter_name
- 要尋找的 POA 名稱。activate_it
- 如果不存在具有指定名稱的 POA,且 activate_it 參數的值為 TRUE,則將調用目標 POA 的 AdapterActivator(如果有)。
AdapterNonExistent
void destroy(boolean etherealize_objects, boolean wait_for_completion)
etherealize_objects
- 指示是否需要對 servant 管理器調用 etherealize 操作的標記。wait_for_completion
- 一個標記,指示 POA 及其子 POA 是否需要等待啟動的請求和 etherealization 操作完成。ThreadPolicy create_thread_policy(ThreadPolicyValue value)
value
- 策略型別
LifespanPolicy create_lifespan_policy(LifespanPolicyValue value)
value
- 策略型別
IdUniquenessPolicy create_id_uniqueness_policy(IdUniquenessPolicyValue value)
value
- 策略型別
IdAssignmentPolicy create_id_assignment_policy(IdAssignmentPolicyValue value)
value
- 策略型別
ImplicitActivationPolicy create_implicit_activation_policy(ImplicitActivationPolicyValue value)
value
- 策略型別
ServantRetentionPolicy create_servant_retention_policy(ServantRetentionPolicyValue value)
value
- 策略型別
RequestProcessingPolicy create_request_processing_policy(RequestProcessingPolicyValue value)
value
- 策略型別
String the_name()
POA the_parent()
POA[] the_children()
POAManager the_POAManager()
AdapterActivator the_activator()
void the_activator(AdapterActivator newThe_activator)
ServantManager get_servant_manager() throws WrongPolicy
WrongPolicy
- 未指定 USE_SERVANT_MANAGER 策略時引發。void set_servant_manager(ServantManager imgr) throws WrongPolicy
imgr
- 預設情況下使用的 servant 管理器。
WrongPolicy
- 未指定 USE_SERVANT_MANAGER 策略時引發。Servant get_servant() throws NoServant, WrongPolicy
NoServant
- 沒有與 POA 關聯的預設 servant 時引發。
WrongPolicy
- 未指定 USE_DEFAULT_SERVANT 策略時引發。void set_servant(Servant p_servant) throws WrongPolicy
p_servant
- 預設情況下使用的 servant。
WrongPolicy
- 未指定 USE_DEFAULT_SERVANT 策略時引發。byte[] activate_object(Servant p_servant) throws ServantAlreadyActive, WrongPolicy
p_servant
- 要與將被啟動的物件關聯的 servant。
ServantAlreadyActive
- 在 POA 具有 UNIQUE_ID 策略且 servant 已經存在於 Active Object Map 時引發。
WrongPolicy
- 未指定 SYSTEM_ID 和 RETAIN 策略時引發。void activate_object_with_id(byte[] id, Servant p_servant) throws ServantAlreadyActive, ObjectAlreadyActive, WrongPolicy
id
- 將被啟動的物件的物件 id。p_servant
- 將關聯物件的 servant。
ServantAlreadyActive
- 在 POA 具有 UNIQUE_ID 策略且 servant 已經存在於 Active Object Map 時引發。
ObjectAlreadyActive
- 物件已經在 POA 中啟動時引發。
WrongPolicy
- 未指定 RETAIN 策略時引發。void deactivate_object(byte[] oid) throws ObjectNotActive, WrongPolicy
oid
- 將被停用的物件的 Object Id。
ObjectNotActive
- 如果具有指定 oid 的物件不在 Active Object Map 中。
WrongPolicy
- 未指定 RETAIN 策略時引發。Object create_reference(String intf) throws WrongPolicy
intf
- 用來創建物件參考的 rep id。
WrongPolicy
- 如果未指定 SYSTEM_ID 策略。Object create_reference_with_id(byte[] oid, String intf)
oid
- 用來創建 objref 的物件 idintf
- 用來創建 objref 的 rep id
BAD_PARAM
- 如果 POA 具有 SYSTEM_ID 策略且它檢測到系統或 POA 沒有產生 Object Id 值。byte[] servant_to_id(Servant p_servant) throws ServantNotActive, WrongPolicy
p_servant
- 為其返回物件 disi 的 servant。
ServantNotActive
- 如果不滿足上述規則和策略組合。
WrongPolicy
- 如果 USE_DEFAULT_SERVANT 策略或 RETAIN 策略的組合以及 UNIQUE_ID 或 IMPLICIT_ACTIVATION 策略不存在。Object servant_to_reference(Servant p_servant) throws ServantNotActive, WrongPolicy
p_servant
- 需要為其獲取物件參考的 servant。
WrongPolicy
- 如果操作不是在對指定 servant 執行請求的上下文中調用的,且所需的策略不存在。
ServantNotActive
- 如果不滿足上述指定策略和規則。Servant reference_to_servant(Object reference) throws ObjectNotActive, WrongPolicy, WrongAdapter
reference
- 為其返回 servant 的物件參考。
WrongPolicy
- 如果 RETAIN 策略或 USE_DEFAULT_SERVANT 策略都不存在。
ObjectNotActive
- 如果 servant 不存在於 Active Object Map 中(對於 RETAIN)或者沒有註冊預設 servant(對於 USE_DEFAULT_POLICY)。
WrongAdapter
- 如果此 POA 實例沒有創建參考。byte[] reference_to_id(Object reference) throws WrongAdapter, WrongPolicy
reference
- 物件參考,需要根據該參考返回物件 id。
WrongAdapter
- 如果參考不是由參考中指定的 POA 創建的。
WrongPolicy
- 先宣告,以用於以後擴展。Servant id_to_servant(byte[] oid) throws ObjectNotActive, WrongPolicy
oid
- 為其返回 servant 的物件 id。
ObjectNotActive
- 如果 ObjectId 不存在於 Active Object Map 中(對於 RETAIN 策略),或者沒有註冊預設 servant(對於 USE_DEFAULT_SERVANT 策略)。
WrongPolicy
- 如果 RETAIN 策略或 USE_DEFAULT_SERVANT 策略不存在,則引發該異常。Object id_to_reference(byte[] oid) throws ObjectNotActive, WrongPolicy
oid
- 為其返回參考的物件 id。
ObjectNotActive
- 如果 POA 中的 Object Id 值未啟動。
WrongPolicy
- 如果不存在 RETAIN 策略。byte[] id()
此 id 在 POA 處理過程中的生命週期內保證是唯一的。對於持久 POA,這意味著如果在同一路徑使用與另一個 POA 相同的名稱創建一個 POA,則這兩個 POA 是等同的,也因此具有相同的 id。對於瞬態 POA,每個 POA 均唯一。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。