public interface BeanContextServices
BeanContextServices 接口为 BeanContext 提供某种机制,将一般的 "services" 向其中的 BeanContextChild 对象公开。
字段摘要 |
---|
从接口 java.beans.beancontext.BeanContext 继承的字段 |
---|
globalHierarchyLock |
从接口 java.beans.DesignMode 继承的字段 |
---|
PROPERTYNAME |
方法摘要 | |
---|---|
void |
addBeanContextServicesListener(BeanContextServicesListener bcsl) 将一个 BeanContextServicesListener 添加到此 BeanContext |
boolean |
addService(Class serviceClass, BeanContextServiceProvider serviceProvider) 向此 BeanContext 添加服务。 |
Iterator |
getCurrentServiceClasses() 获得此上下文的当前可用服务。 |
Iterator |
getCurrentServiceSelectors(Class serviceClass) 通过在基础 BeanContextServiceProvider 上调用 getCurrentServiceSelectors() 获得指定服务的与服务有关的服务参数列表(服务选择器)。 |
Object |
getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) BeanContextChild (或任意与 BeanContextChild 关联的对象)可以通过调用此方法从其嵌套 BeanContextServices 中获得对当前已注册服务的引用。 |
boolean |
hasService(Class serviceClass) 报告是否可以从此上下文中得到给定服务。 |
void |
releaseService(BeanContextChild child, Object requestor, Object service) 通过在基础 BeanContextServiceProvider 上调用 releaseService() 释放 BeanContextChild (或与 BeanContextChild 关联的任意对象)对指定服务的引用。 |
void |
removeBeanContextServicesListener(BeanContextServicesListener bcsl) 从此 BeanContext 中移除一个 BeanContextServicesListener |
void |
revokeService(Class serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow) 希望从此上下文中移除当前已注册服务的 BeanContextServiceProvider 可以通过调用此方法实现移除。 |
从接口 java.beans.beancontext.BeanContext 继承的方法 |
---|
addBeanContextMembershipListener, getResource, getResourceAsStream, instantiateChild, removeBeanContextMembershipListener |
从接口 java.beans.beancontext.BeanContextChild 继承的方法 |
---|
addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext |
从接口 java.util.Collection 继承的方法 |
---|
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray |
从接口 java.beans.DesignMode 继承的方法 |
---|
isDesignTime, setDesignTime |
从接口 java.beans.Visibility 继承的方法 |
---|
avoidingGui, dontUseGui, needsGui, okToUseGui |
从接口 java.beans.beancontext.BeanContextServicesListener 继承的方法 |
---|
serviceAvailable |
从接口 java.beans.beancontext.BeanContextServiceRevokedListener 继承的方法 |
---|
serviceRevoked |
方法详细信息 |
---|
boolean addService(Class serviceClass, BeanContextServiceProvider serviceProvider)
BeanContextServiceProvider
调用此方法来向此上下文注册一个特定服务。如果该服务不是以前已添加的服务,则
BeanContextServices
会将该服务与
BeanContextServiceProvider
相关联,并对所有当前已注册的
BeanContextServicesListeners
激发一个
BeanContextServiceAvailableEvent
。然后该方法返回
true
,指示成功添加了服务。如果已添加给定服务,则此方法仅返回
false
。
serviceClass
- 要添加的服务
serviceProvider
- 与该服务相关联的
BeanContextServiceProvider
void revokeService(Class serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow)
BeanContextServices
对当前已注册的
BeanContextServiceRevokedListeners
和
BeanContextServicesListeners
的列表触发一个
BeanContextServiceRevokedEvent
。
serviceClass
- 要从此 BeanContextServices 中取消的服务
serviceProvider
- 与将取消的特定服务有关联的 BeanContextServiceProvider
revokeCurrentServicesNow
- 值为
true
指示一个异常环境,在该环境中,
BeanContextServiceProvider
或
BeanContextServices
希望立即终止为指定服务的所有当前突出引用提供服务。
boolean hasService(Class serviceClass)
serviceClass
- 相关服务
Object getService(BeanContextChild child, Object requestor, Class serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
BeanContextChild
(或任意与
BeanContextChild
关联的对象)可以通过调用此方法从其嵌套
BeanContextServices
中获得对当前已注册服务的引用。此方法在调用时通过在基础
BeanContextServiceProvider
上调用 getService() 获得服务。
child
- 与此请求相关联的
BeanContextChild
requestor
- 请求服务的对象
serviceClass
- 所请求服务的类
serviceSelector
- 与服务有关的参数
bcsrl
- 通知稍后是否应该取消服务的
BeanContextServiceRevokedListener
null
TooManyListenersException
void releaseService(BeanContextChild child, Object requestor, Object service)
BeanContextServiceProvider
上调用 releaseService() 释放
BeanContextChild
(或与 BeanContextChild 关联的任意对象)对指定服务的引用。
child
-
BeanContextChild
requestor
- 请求者
service
- 服务
Iterator getCurrentServiceClasses()
Iterator
Iterator getCurrentServiceSelectors(Class serviceClass)
serviceClass
- 指定服务
void addBeanContextServicesListener(BeanContextServicesListener bcsl)
BeanContextServicesListener
添加到此 BeanContext
bcsl
- 要添加的
BeanContextServicesListener
void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
BeanContext
中移除一个
BeanContextServicesListener
bcsl
- 要从此上下文移除的
BeanContextServicesListener