-  
       
- All Superinterfaces:
 -  
         
BeanContext,BeanContextChild,BeanContextServiceRevokedListener,BeanContextServicesListener,Collection,DesignMode,EventListener,Iterable,Visibility 
- 所有已知实现类:
 -  
         
BeanContextServicesSupport 
public interface BeanContextServices extends BeanContext, BeanContextServicesListener
BeanContextServices接口为BeanContext提供了一种机制,用于向其中的BeanContextChild对象公开通用“服务”。
 
-  
        
       
-  
             
字段汇总
-  
               
Fields declared in interface java.beans.beancontext.BeanContext
globalHierarchyLock 
-  
               
Fields declared in interface java.beans.DesignMode
PROPERTYNAME 
 -  
               
 
-  
             
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 voidaddBeanContextServicesListener(BeanContextServicesListener bcsl)在此BeanContext中添加BeanContextServicesListenerbooleanaddService(类<?> serviceClass, BeanContextServiceProvider serviceProvider)向此BeanContext添加服务。Iterator<?>getCurrentServiceClasses()获取此上下文的当前可用服务。Iterator<?>getCurrentServiceSelectors(类<?> serviceClass)通过在底层BeanContextServiceProvider上调用getCurrentServiceSelectors(),获取指定服务的服务相关服务参数(服务选择器)列表。ObjectgetService(BeanContextChild child, Object requestor, 类<?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl)BeanContextChild或与BeanContextChild关联的任意对象可以通过调用此方法从其嵌套BeanContextServices获取对当前已注册服务的引用。booleanhasService(类<?> serviceClass)报告此上下文中当前是否提供给定服务。voidreleaseService(BeanContextChild child, Object requestor, Object service)通过调用底层BeanContextServiceProvider上的releaseService(),释放BeanContextChild(或与BeanContextChild关联的任意对象)对指定服务的BeanContextServiceProvider。voidremoveBeanContextServicesListener(BeanContextServicesListener bcsl)删除一个BeanContextServicesListener从这个BeanContextvoidrevokeService(类<?> 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
boolean addService(类<?> serviceClass, BeanContextServiceProvider serviceProvider)
向此BeanContext添加服务。BeanContextServiceProviders调用此方法以使用此上下文注册特定服务。 如果服务先前没有被添加,该BeanContextServices关联与服务BeanContextServiceProvider并触发一个BeanContextServiceAvailableEvent到所有当前已注册BeanContextServicesListeners。 该方法然后返回true,表示添加服务成功。 如果已添加给定服务,则此方法仅返回false。- 参数
 -  
              
serviceClass- 要添加的服务 -  
              
serviceProvider- 与服务相关的BeanContextServiceProvider - 结果
 - 如果服务成功添加,则为true,否则为false
 
 
-  
revokeService
void revokeService(类<?> serviceClass, BeanContextServiceProvider serviceProvider, boolean revokeCurrentServicesNow)
希望从此上下文中删除当前已注册服务的BeanContextServiceProviders可以通过调用此方法来执行此操作。 在撤销该服务后,BeanContextServices将BeanContextServiceRevokedEvent发送到其当前注册的BeanContextServiceRevokedListeners和BeanContextServicesListeners列表中。- 参数
 -  
              
serviceClass- 从此BeanContextServices撤消的服务 -  
              
serviceProvider- 与正在撤消的此特定服务关联的BeanContextServiceProvider -  
              
revokeCurrentServicesNow- 值true表示特殊情况,其中BeanContextServiceProvider或BeanContextServices希望立即终止对指定服务的所有当前未完成引用的服务。 
 
-  
hasService
boolean hasService(类<?> serviceClass)
报告此上下文中当前是否提供给定服务。- 参数
 -  
              
serviceClass- 相关服务 - 结果
 - 如果服务可用,则为true
 
 
-  
getService
Object getService(BeanContextChild child, Object requestor, 类<?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
BeanContextChild或与BeanContextChild关联的任意对象可以通过调用此方法从其嵌套BeanContextServices获取对当前已注册服务的引用。 调用时,此方法通过调用底层BeanContextServiceProvider上的getService()方法来获取服务。- 参数
 -  
              
child- 与此请求关联的BeanContextChild -  
              
requestor- 请求服务的对象 -  
              
serviceClass- 所请求服务的类 -  
              
serviceSelector- 服务相关参数 -  
              
bcsrl- 如果该服务稍后将被撤销,则通知BeanContextServiceRevokedListener - 结果
 - 
               引用此上下文的命名服务或请求 
              
null - 异常
 -  
              
TooManyListenersException- 如果有太多的听众 
 
-  
releaseService
void releaseService(BeanContextChild child, Object requestor, Object service)
通过调用底层BeanContextServiceProvider上的releaseService(),释放BeanContextChild(或与BeanContextChild关联的任意对象)对指定服务的BeanContextServiceProvider。- 参数
 -  
              
child-BeanContextChild -  
              
requestor- 请求者 -  
              
service- 服务 
 
-  
getCurrentServiceClasses
Iterator<?> getCurrentServiceClasses()
获取此上下文的当前可用服务。- 结果
 -  
              
Iterator由当前可用的服务组成 
 
-  
getCurrentServiceSelectors
Iterator<?> getCurrentServiceSelectors(类<?> serviceClass)
通过在底层BeanContextServiceProvider上调用getCurrentServiceSelectors(),获取指定服务的服务相关服务参数(服务选择器)列表。- 参数
 -  
              
serviceClass- 指定的服务 - 结果
 - 命名serviceClass的当前可用服务选择器
 
 
-  
addBeanContextServicesListener
void addBeanContextServicesListener(BeanContextServicesListener bcsl)
将BeanContextServicesListener添加到此BeanContext- 参数
 -  
              
bcsl- 要添加的BeanContextServicesListener 
 
-  
removeBeanContextServicesListener
void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
删除一个BeanContextServicesListener从这个BeanContext- 参数
 -  
              
bcsl- 从此上下文中删除BeanContextServicesListener 
 
 -  
 
 -