- 所有父级接口:
BeanContext,BeanContextChild,BeanContextServiceRevokedListener,BeanContextServicesListener,Collection,DesignMode,EventListener,Iterable,Visibility
- 所有已知的实现类:
BeanContextServicesSupport
BeanContextServices 接口为 BeanContext 提供了一种机制,以向其中的 BeanContextChild 对象公开通用“服务”。
-
字段摘要
在接口 java.beans.beancontext.BeanContext 中声明的字段
globalHierarchyLock在接口 java.beans.DesignMode 中声明的字段
PROPERTYNAME -
方法总结
修饰符和类型方法描述void添加一个BeanContextServicesListener到这个 BeanContextbooleanaddService(Class<?> serviceClass, BeanContextServiceProvider serviceProvider) 向此 BeanContext 添加服务。Iterator<?>获取此上下文的当前可用服务。Iterator<?>getCurrentServiceSelectors(Class<?> serviceClass) 通过调用底层 BeanContextServiceProvider 上的 getCurrentServiceSelectors() 获取指定服务的服务相关服务参数(服务选择器)列表。getService(BeanContextChild child, Object requestor, Class<?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) BeanContextChild或与BeanContextChild关联的任意对象可以通过调用此方法从其嵌套BeanContextServices获取对当前注册服务的引用。booleanhasService(Class<?> serviceClass) 报告此上下文中当前是否提供给定服务。voidreleaseService(BeanContextChild child, Object requestor, Object service) 通过在底层BeanContextServiceProvider上调用 releaseService() 来释放BeanContextChild的(或任何与 BeanContextChild 关联的任意对象)对指定服务的引用。void从这个BeanContext中删除一个BeanContextServicesListenervoidrevokeService(Class<?> serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow) BeanContextServiceProviders 希望从此上下文中删除当前注册的服务可以通过调用此方法来实现。在接口 java.beans.beancontext.BeanContext 中声明的方法
addBeanContextMembershipListener, getResource, getResourceAsStream, instantiateChild, removeBeanContextMembershipListener在接口 java.beans.beancontext.BeanContextChild 中声明的方法
addPropertyChangeListener, addVetoableChangeListener, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext在接口 java.beans.beancontext.BeanContextServiceRevokedListener 中声明的方法
serviceRevoked在接口 java.beans.beancontext.BeanContextServicesListener 中声明的方法
serviceAvailable在接口 java.util.Collection 中声明的方法
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray在接口 java.beans.DesignMode 中声明的方法
isDesignTime, setDesignTime在接口 java.beans.Visibility 中声明的方法
avoidingGui, dontUseGui, needsGui, okToUseGui
-
方法详情
-
addService
向此 BeanContext 添加服务。BeanContextServiceProviders 调用此方法以使用此上下文注册特定服务。如果之前未添加该服务,BeanContextServices将该服务与BeanContextServiceProvider相关联,并向所有当前注册的BeanContextServicesListeners触发BeanContextServiceAvailableEvent。然后该方法返回true,表示添加服务成功。如果给定的服务已经被添加,这个方法只返回false。- 参数:
serviceClass- 要添加的服务serviceProvider- 与服务关联的BeanContextServiceProvider- 返回:
- 如果服务添加成功则为 true,否则为 false
-
revokeService
void revokeService(Class <?> serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow) BeanContextServiceProviders 希望从此上下文中删除当前注册的服务可以通过调用此方法来实现。撤销服务后,BeanContextServices会向其当前注册的BeanContextServiceRevokedListeners和BeanContextServicesListeners列表发送一个BeanContextServiceRevokedEvent。- 参数:
serviceClass- 从此 BeanContextServices 撤销的服务serviceProvider- 与被撤销的特定服务关联的 BeanContextServiceProviderrevokeCurrentServicesNow- 值true表示异常情况,其中BeanContextServiceProvider或BeanContextServices希望立即终止对指定服务的所有当前未完成引用的服务。
-
hasService
报告此上下文中当前是否提供给定服务。- 参数:
serviceClass- 有问题的服务- 返回:
- 如果服务可用则为真
-
getService
Object getService(BeanContextChild child, Object requestor, Class <?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException BeanContextChild或与BeanContextChild关联的任意对象可以通过调用此方法从其嵌套BeanContextServices获取对当前注册服务的引用。调用时,此方法通过调用底层BeanContextServiceProvider上的 getService() 方法来获取服务。- 参数:
child- 与此请求关联的BeanContextChildrequestor- 请求服务的对象serviceClass- 请求服务的类serviceSelector- 服务相关参数bcsrl-BeanContextServiceRevokedListener通知服务是否应该在以后被撤销- 返回:
-
根据请求引用此上下文的命名服务或
null - 抛出:
TooManyListenersException- 如果听众太多
-
releaseService
通过在底层BeanContextServiceProvider上调用 releaseService() 来释放BeanContextChild的(或任何与 BeanContextChild 关联的任意对象)对指定服务的引用。- 参数:
child-BeanContextChildrequestor- 请求者service- 服务
-
getCurrentServiceClasses
Iterator <?> getCurrentServiceClasses()获取此上下文的当前可用服务。- 返回:
-
一个
Iterator由当前可用的服务组成
-
getCurrentServiceSelectors
通过调用底层 BeanContextServiceProvider 上的 getCurrentServiceSelectors() 获取指定服务的服务相关服务参数(服务选择器)列表。- 参数:
serviceClass- 指定的服务- 返回:
- 指定服务类的当前可用服务选择器
-
addBeanContextServicesListener
添加一个BeanContextServicesListener到这个 BeanContext- 参数:
bcsl- 要添加的BeanContextServicesListener
-
removeBeanContextServicesListener
从这个BeanContext中删除一个BeanContextServicesListener- 参数:
bcsl- 要从此上下文中删除的BeanContextServicesListener
-