|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
public interface BeanContextServiceProvider
BeanContext 的主要功能之一是充當 JavaBeans 與 BeanContextServiceProviders 之間的集合點。
巢狀在 BeanContext 中的 JavaBean 可能要求 BeanContext 提供 "service" 的一個實例,該 JavaBean 基於表示該服務的 Java Class 物件的參考。
在上下文委託自己的上下文來滿足服務請求的情況下,如果已經向上下文或其某個巢狀上下文註冊了一個此類別服務,那麼會請求與該服務相關聯的 BeanContextServiceProvider 提供該服務的一個實例。
ServcieProvider 可能總是返回相同的實例,它也可能為每個請求建構一個新的實例。
| 方法摘要 | |
|---|---|
Iterator |
getCurrentServiceSelectors(BeanContextServices bcs,
Class serviceClass)
由 BeanContextServices 調用,此方法獲得指定服務的當前服務選擇器。 |
Object |
getService(BeanContextServices bcs,
Object requestor,
Class serviceClass,
Object serviceSelector)
由 BeanContextServices 調用,此方法請求來自此 BeanContextServiceProvider 服務的一個實例。 |
void |
releaseService(BeanContextServices bcs,
Object requestor,
Object service)
由 BeanContextServices 調用,此方法釋放一個對特定服務的巢狀 BeanContextChild(或與 BeanContextChild 關聯的任意物件)的參考。 |
| 方法詳細資訊 |
|---|
Object getService(BeanContextServices bcs,
Object requestor,
Class serviceClass,
Object serviceSelector)
BeanContextServices 調用,此方法請求來自此 BeanContextServiceProvider 服務的一個實例。
bcs - 與此特定請求相關聯的 BeanContextServices。此參數允許 BeanContextServiceProvider 區別來自多個源的服務請求。requestor - 請求服務的物件serviceClass - 請求的服務serviceSelector - 用於特定服務的與服務有關的參數,如果不適用,則為 null。
void releaseService(BeanContextServices bcs,
Object requestor,
Object service)
BeanContextServices 調用,此方法釋放一個對特定服務的巢狀 BeanContextChild(或與 BeanContextChild 關聯的任意物件)的參考。
bcs - 與此特定釋放請求相關聯的 BeanContextServicesrequestor - 請求釋放服務的物件service - 要釋放的服務
Iterator getCurrentServiceSelectors(BeanContextServices bcs,
Class serviceClass)
BeanContextServices 調用,此方法獲得指定服務的當前服務選擇器。服務選擇器是一種特定於服務的參數,它的典型範例可能包括:用於服務實作類別的建構子的參數、特定服務的屬性值或已存在實作的映射中的鍵。
bcs - 此請求的 BeanContextServicesserviceClass - 指定的服務
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。