Интерфейс BeanContextServices

Все суперинтерфейсы:
BeanContext, BeanContextChild, BeanContextServiceRevokedListener, BeanContextServicesListener, Collection, DesignMode, EventListener, Iterable, Visibility
Все известные реализующие классы:
BeanContextServicesSupport
public interface BeanContextServices
extends BeanContext, BeanContextServicesListener

Интерфейс BeanContextServices предоставляет механизм для BeanContext, чтобы предоставлять общие «сервисы» объектам BeanContextChild внутри.

Поля

Поля, объявленные в интерфейсе java.beans.beancontext.BeanContext

globalHierarchyLock

Поля, объявленные в интерфейсе java.beans.DesignMode

PROPERTYNAME

Методы

Модификатор и типМетодОписание
voidaddBeanContextServicesListener​(BeanContextServicesListener bcsl)

Добавляет BeanContextServicesListener в этот BeanContext

booleanaddService​(Class<?> serviceClass, BeanContextServiceProvider serviceProvider)

Добавляет сервис в этот BeanContext.

Iterator<?>getCurrentServiceClasses()

Получает доступные в данный момент сервисы для этого контекста.

Iterator<?>getCurrentServiceSelectors​(Class<?> serviceClass)

Получает список параметров сервиса, зависящих от сервиса (селекторы сервиса), для указанного сервиса, вызывая getCurrentServiceSelectors() в базовом BeanContextServiceProvider.

ObjectgetService​(BeanContextChild child, Object requestor, Class<?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl)

Любой объект, связанный с BeanContextChild, может получить ссылку на зарегистрированный сервис из своего вложенного BeanContextServices через вызов этого метода.

booleanhasService​(Class<?> serviceClass)

Указывает, доступен ли данный сервис в данный момент в этом контексте.

voidreleaseService​(BeanContextChild child, Object requestor, Object service)

Освобождает ссылку на указанный сервис у BeanContextChild (или любого произвольного объекта, связанного с BeanContextChild), вызывая releaseService() в базовом BeanContextServiceProvider.

voidremoveBeanContextServicesListener​(BeanContextServicesListener bcsl)

Удаляет BeanContextServicesListener из этого BeanContext

voidrevokeService​(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.lang.Iterable

forEach

Методы, объявленные в интерфейсе java.beans.Visibility

avoidingGui, dontUseGui, needsGui, okToUseGui

Методы

addService

boolean addService(Class<?> serviceClass,
                   BeanContextServiceProvider serviceProvider)

Добавляет сервис в этот BeanContext. BeanContextServiceProvider вызов этого метода регистрирует конкретный сервис в этом контексте. Если сервис не был добавлен ранее, BeanContextServices связывает сервис с BeanContextServiceProvider и отправляет BeanContextServiceAvailableEvent всем текущим зарегистрированным BeanContextServicesListeners. Затем метод возвращает true, указывая, что добавление сервиса было успешным. Если данный сервис уже был добавлен, этот метод просто возвращает false.

Параметры:
serviceClass - добавляемый сервис
serviceProvider - BeanContextServiceProvider , связанный с сервисом
Возвращает:
true, если сервис был успешно добавлен, false в противном случае

revokeService

void revokeService(Class<?> serviceClass,
                   BeanContextServiceProvider serviceProvider,
                   boolean revokeCurrentServicesNow)

BeanContextServiceProviders, желающие удалить зарегистрированный сервис из этого контекста, могут сделать это, вызвав этот метод. После отзыва сервиса, BeanContextServices отправляет BeanContextServiceRevokedEvent своему списку текущих зарегистрированных BeanContextServiceRevokedListeners и BeanContextServicesListeners.

Параметры:
serviceClass - сервис, который необходимо отозвать из BeanContextServices
serviceProvider - BeanContextServiceProvider, связанный с этим конкретным сервисом, который отзывается
revokeCurrentServicesNow - значение true указывает на исключительный случай, когда BeanContextServiceProvider или BeanContextServices хотят немедленно прекратить предоставление сервиса всем текущим активным ссылкам на указанный сервис.

hasService

boolean hasService(Class<?> serviceClass)

Указывает, доступен ли данный сервис в данный момент в этом контексте.

Параметры:
serviceClass - интересующий сервис
Возвращает:
true, если сервис доступен

getService

Object getService(BeanContextChild child,
                  Object requestor,
                  Class<?> serviceClass,
                  Object serviceSelector,
                  BeanContextServiceRevokedListener bcsrl)
           throws TooManyListenersException

Любой объект, связанный с BeanContextChild, может получить ссылку на зарегистрированный сервис из своего вложенного BeanContextServices через вызов этого метода. При вызове этот метод получает сервис, вызывая метод getService() в базовом BeanContextServiceProvider.

Параметры:
child - BeanContextChild , связанный с этим запросом
requestor - объект, запрашивающий сервис
serviceClass - класс запрашиваемого сервиса
serviceSelector - параметр, зависящий от сервиса
bcsrl - BeanContextServiceRevokedListener для уведомления, если сервис позже будет отозван
Возвращает:
ссылка на именованный сервис этого контекста, как запрошено, или null
Исключения:
TooManyListenersException - если слушателей слишком много

releaseService

void releaseService(BeanContextChild child,
                    Object requestor,
                    Object service)

Освобождает ссылку на указанный сервис у BeanContextChild (или любого произвольного объекта, связанного с BeanContextChild), вызывая releaseService() в базовом BeanContextServiceProvider.

Параметры:
child - BeanContextChild
requestor - запросчик
service - сервис

getCurrentServiceClasses

Iterator<?> getCurrentServiceClasses()

Получает доступные в данный момент сервисы для этого контекста.

Возвращает:
список текущих доступных сервисов

getCurrentServiceSelectors

Iterator<?> getCurrentServiceSelectors(Class<?> serviceClass)

Получает список параметров сервиса, зависящих от сервиса (селекторы сервиса), для указанного сервиса, вызывая getCurrentServiceSelectors() в базовом BeanContextServiceProvider.

Параметры:
serviceClass - указанный сервис
Возвращает:
текущие доступные селекторы сервиса для сервиса с именем serviceClass

addBeanContextServicesListener

void addBeanContextServicesListener(BeanContextServicesListener bcsl)

Добавляет BeanContextServicesListener в этот BeanContext

Параметры:
bcsl - добавляемый BeanContextServicesListener

removeBeanContextServicesListener

void removeBeanContextServicesListener(BeanContextServicesListener bcsl)

Удаляет BeanContextServicesListener из этого BeanContext

Параметры:
bcsl - BeanContextServicesListener для удаления из этого контекста

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/beancontext/BeanContextServices.html

Spec-Zone .ru
спецификации, руководства, описания, API