Класс BeanContextServicesSupport
- Все реализованные интерфейсы:
-
BeanContext,BeanContextChild,BeanContextServiceRevokedListener,BeanContextServices,BeanContextServicesListener,DesignMode,PropertyChangeListener,VetoableChangeListener,Visibility,Serializable,Iterable,Collection,EventListener
public class BeanContextServicesSupport extends BeanContextSupport implements BeanContextServices
Этот вспомогательный класс предоставляет реализацию интерфейса java.beans.beancontext.BeanContextServices.
Поскольку этот класс напрямую реализует интерфейс BeanContextServices, его можно использовать как путем наследования от этой реализации, так и путем делегирования экземпляра этого класса другому объекту через интерфейс BeanContextProxy.
- С момента:
- 1.2
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
BeanContextServicesSupport.BCSSChild |
Вложенный защищённый класс, содержащий информацию о каждом дочернем объекте в таблице children. |
protected class |
BeanContextServicesSupport.BCSSProxyServiceProvider |
Подклассы могут наследоваться от этого вложенного класса для представления прокси каждого BeanContextServiceProvider. |
protected static class |
BeanContextServicesSupport.BCSSServiceProvider |
Подклассы могут наследоваться от этого вложенного класса, чтобы добавить поведение для каждого BeanContextServicesProvider. |
Вложенные классы/интерфейсы, объявленные в классе java.beans.beancontext.BeanContextSupport
BeanContextSupport.BCSChild, BeanContextSupport.BCSIterator
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected ArrayList |
bcsListeners |
Список объектов BeanContextServicesListener. |
protected BeanContextServicesSupport.BCSSProxyServiceProvider |
proxy |
Делегат для BeanContextServiceProvider. |
protected int |
serializable |
Количество экземпляров сериализуемого BeanContextServceProvider. |
protected HashMap |
services |
Все обращения к полю protected transient HashMap services должны синхронизироваться на этом объекте |
Поля, объявленные в классе java.beans.beancontext.BeanContextSupport
bcmListeners, children, designTime, locale, okToUseGui
Поля, объявленные в классе java.beans.beancontext.BeanContextChildSupport
beanContext, beanContextChildPeer, pcSupport, rejectedSetBCOnce, vcSupport
Поля, объявленные в интерфейсе java.beans.beancontext.BeanContext
globalHierarchyLock
Поля, объявленные в интерфейсе java.beans.DesignMode
PROPERTYNAME
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BeanContextServicesSupport() |
Создать экземпляр, не являющийся делегатом другого объекта |
BeanContextServicesSupport |
Создать экземпляр с коллегой |
BeanContextServicesSupport |
Создать экземпляр с указанным языковым стандартом |
BeanContextServicesSupport |
Создать экземпляр с указанным языковым стандартом и режимом проектирования. |
BeanContextServicesSupport |
Создать экземпляр BeanContextServicesSupport |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addBeanContextServicesListener |
добавить BeanContextServicesListener |
boolean |
addService |
добавить сервис |
protected boolean |
addService |
добавить сервис |
protected void |
bcsPreDeserializationHook |
вызывается из BeanContextSupport readObject перед десериализацией дочерних элементов ... |
protected void |
bcsPreSerializationHook |
вызывается из BeanContextSupport writeObject перед сериализацией дочерних элементов ... |
protected void |
childJustRemovedHook |
вызывается из операций удаления дочерних элементов суперкласса после успешного удаления дочернего элемента. Вызывается с синхронизированным дочерним элементом. |
protected BeanContextSupport.BCSChild |
createBCSChild |
Подклассы могут переопределить этот метод для вставки собственного подкласса Child без необходимости переопределения add() или других методов Collection, добавляющих дочерние элементы в набор. |
protected BeanContextServicesSupport.BCSSServiceProvider |
createBCSSServiceProvider |
Подклассы могут переопределить этот метод для создания новых подклассов BCSSServiceProvider без необходимости переопределения addService() для инициализации. |
protected final void |
fireServiceAdded |
Вызывает BeanContextServiceAvailableEvent, указывающий на то, что новый сервис стал доступен. |
protected final void |
fireServiceAdded |
Вызывает BeanContextServiceEvent, уведомляющий о новом сервисе. |
protected final void |
fireServiceRevoked |
Вызывает BeanContextServiceEvent, уведомляющий об отзыве сервиса. |
protected final void |
fireServiceRevoked |
Вызывает BeanContextServiceRevokedEvent, указывающий на то, что конкретный сервис больше недоступен. |
BeanContextServices |
getBeanContextServicesPeer() |
Получает BeanContextServices, связанный с этим BeanContextServicesSupport. |
protected static final BeanContextServicesListener |
getChildBeanContextServicesListener |
Получает BeanContextServicesListener (если есть) указанного дочернего элемента. |
Iterator |
getCurrentServiceClasses() |
Получает доступные в данный момент сервисы для данного контекста. |
Iterator |
getCurrentServiceSelectors |
Получает список параметров сервисов, зависящих от сервиса (селекторы сервисов), для указанного сервиса, вызывая getCurrentServiceSelectors() на базовом BeanContextServiceProvider. |
Object |
getService |
получить сервис, который может быть делегирован |
boolean |
hasService |
имеет сервис, который может быть делегирован |
void |
initialize() |
вызывается классом BeanContextSupport суперкласса во время создания и десериализации для инициализации транзиентного состояния подкласса. |
protected void |
initializeBeanContextResources() |
вызывается из setBeanContext для уведомления BeanContextChild об выделении ресурсов, полученных из вложенного BeanContext. |
protected void |
releaseBeanContextResources() |
вызывается из setBeanContext для уведомления BeanContextChild об освобождении ресурсов, полученных из вложенного BeanContext. |
void |
releaseService |
освободить сервис |
void |
removeBeanContextServicesListener |
удалить BeanContextServicesListener |
void |
revokeService |
удалить сервис |
void |
serviceAvailable |
Обработчик вызова BeanContextServicesListener, распространяет событие всем текущим зарегистрированным слушателям и дочерним элементам BeanContextServices, если этот BeanContextService сам не реализует этот сервис. |
void |
serviceRevoked |
Обработчик вызова BeanContextServicesListener, распространяет событие всем текущим зарегистрированным слушателям и дочерним элементам BeanContextServices, если этот BeanContextService сам не реализует этот сервис. |
Методы, объявленные в классе java.beans.beancontext.BeanContextSupport
add, addAll, addBeanContextMembershipListener, avoidingGui, bcsChildren, childDeserializedHook, childJustAddedHook, classEquals, clear, contains, containsAll, containsKey, copyChildren, deserialize, dontUseGui, fireChildrenAdded, fireChildrenRemoved, getBeanContextPeer, getChildBeanContextChild, getChildBeanContextMembershipListener, getChildPropertyChangeListener, getChildSerializable, getChildVetoableChangeListener, getChildVisibility, getLocale, getResource, getResourceAsStream, instantiateChild, isDesignTime, isEmpty, isSerializing, iterator, needsGui, okToUseGui, propertyChange, readChildren, remove, remove, removeAll, removeBeanContextMembershipListener, retainAll, serialize, setDesignTime, setLocale, size, toArray, toArray, validatePendingAdd, validatePendingRemove, vetoableChange, writeChildren
Методы, объявленные в классе java.beans.beancontext.BeanContextChildSupport
addPropertyChangeListener, addVetoableChangeListener, firePropertyChange, fireVetoableChange, getBeanContext, getBeanContextChildPeer, isDelegated, removePropertyChangeListener, removeVetoableChangeListener, setBeanContext, validatePendingSetBeanContext
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе 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, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray
Методы, объявленные в интерфейсе java.beans.DesignMode
isDesignTime, setDesignTime
Методы, объявленные в интерфейсе java.beans.Visibility
avoidingGui, dontUseGui, needsGui, okToUseGui
Подробное описание полей
services
protected transient HashMap<Object,BeanContextServicesSupport.BCSSServiceProvider> services
protected transient HashMap services должны быть синхронизированы на этом объектеserializable
protected transient int serializable
BeanContextServceProvider.proxy
protected transient BeanContextServicesSupport.BCSSProxyServiceProvider proxy
BeanContextServiceProvider.bcsListeners
protected transient ArrayList<BeanContextServicesListener> bcsListeners
BeanContextServicesListener.Подробное описание конструкторов
BeanContextServicesSupport
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle, boolean dTime, boolean visible)
Создать экземпляр BeanContextServicesSupport
- Параметры:
-
peer- Объект BeanContext, для которого мы предоставляем реализацию; если null, этот объект является собственным пэром -
lcle- Текущий язык для данного BeanContext. -
dTime- Начальное состояние; true, если в режиме проектирования, false — если в режиме выполнения. -
visible- Начальная видимость.
BeanContextServicesSupport
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle, boolean dtime)
- Параметры:
-
peer- Объект BeanContext, для которого мы предоставляем реализацию; если null, этот объект является собственным пэром -
lcle- Текущий язык для данного BeanContext. -
dtime- Начальное состояние; true, если в режиме проектирования, false — если в режиме выполнения.
BeanContextServicesSupport
public BeanContextServicesSupport(BeanContextServices peer, Locale lcle)
- Параметры:
-
peer- Объект BeanContext, для которого мы предоставляем реализацию; если null, этот объект является собственным пэром -
lcle- Текущий язык для данного BeanContext.
BeanContextServicesSupport
public BeanContextServicesSupport(BeanContextServices peer)
- Параметры:
-
peer- Объект BeanContext, для которого мы предоставляем реализацию; если null, этот объект является собственным пэром
BeanContextServicesSupport
public BeanContextServicesSupport()
Подробное описание методов
initialize
public void initialize()
- Переопределяет:
-
initializeв классеBeanContextSupport
getBeanContextServicesPeer
public BeanContextServices getBeanContextServicesPeer()
BeanContextServices, связанный с этим BeanContextServicesSupport.- Возвращает:
- экземпляр
BeanContext, за реализацию которого отвечает этот объект.
createBCSChild
protected BeanContextSupport.BCSChild createBCSChild(Object targetChild, Object peer)
Подклассы могут переопределить этот метод для вставки собственного подкласса Child без необходимости переопределять add() или другие методы коллекции, добавляющие потомков в набор.
- Переопределяет:
-
createBCSChildв классеBeanContextSupport - Параметры:
-
targetChild- дочерний элемент, для которого необходимо создать Child -
peer- пэр, если targetChild и peer связаны BeanContextProxy - Возвращает:
- подкласс Child, специфичный для подтипа, без переопределения методов коллекции
createBCSSServiceProvider
protected BeanContextServicesSupport.BCSSServiceProvider createBCSSServiceProvider(Class<?> sc, BeanContextServiceProvider bcsp)
- Параметры:
-
sc- класс -
bcsp- поставщик сервиса - Возвращает:
- поставщик сервиса без переопределения addService()
addBeanContextServicesListener
public void addBeanContextServicesListener(BeanContextServicesListener bcsl)
- Определено в:
-
addBeanContextServicesListenerв интерфейсеBeanContextServices - Параметры:
-
bcsl- добавляемыйBeanContextServicesListener - Исключения:
-
NullPointerException- если аргумент равен null
removeBeanContextServicesListener
public void removeBeanContextServicesListener(BeanContextServicesListener bcsl)
- Определено в:
-
removeBeanContextServicesListenerв интерфейсеBeanContextServices - Параметры:
-
bcsl- удаляемыйBeanContextServicesListenerиз этого контекста
addService
public boolean addService(Class<?> serviceClass, BeanContextServiceProvider bcsp)
- Определено в:
-
addServiceв интерфейсеBeanContextServices - Параметры:
-
serviceClass- класс сервиса -
bcsp- поставщик сервиса - Возвращает:
- true, если сервис был успешно добавлен, false — в противном случае
addService
protected boolean addService(Class<?> serviceClass, BeanContextServiceProvider bcsp, boolean fireEvent)
- Параметры:
-
serviceClass- класс сервиса -
bcsp- поставщик сервиса -
fireEvent- нужно ли генерировать событие - Возвращает:
- true, если сервис был успешно добавлен
revokeService
public void revokeService(Class<?> serviceClass, BeanContextServiceProvider bcsp, boolean revokeCurrentServicesNow)
- Определено в:
-
revokeServiceв интерфейсеBeanContextServices - Параметры:
-
serviceClass- класс сервиса -
bcsp- поставщик сервиса -
revokeCurrentServicesNow- нужно ли аннулировать сервис
hasService
public boolean hasService(Class<?> serviceClass)
- Определено в:
-
hasServiceв интерфейсеBeanContextServices - Параметры:
-
serviceClass- интересующий сервис - Возвращает:
- true, если сервис доступен
getService
public Object getService(BeanContextChild child, Object requestor, Class<?> serviceClass, Object serviceSelector, BeanContextServiceRevokedListener bcsrl) throws TooManyListenersException
- Определено в:
-
getServiceв интерфейсеBeanContextServices - Параметры:
-
child-BeanContextChildсвязанный с этим запросом -
requestor- объект, запрашивающий сервис -
serviceClass- класс запрашиваемого сервиса -
serviceSelector- параметр, зависящий от сервиса -
bcsrl-BeanContextServiceRevokedListenerдля уведомления, если сервис позже будет аннулирован - Возвращает:
- ссылка на именованный сервис этого контекста, как запрошено, или
null - Исключения:
-
TooManyListenersException- если слушателей слишком много
releaseService
public void releaseService(BeanContextChild child, Object requestor, Object service)
- Определено в:
-
releaseServiceв интерфейсеBeanContextServices - Параметры:
-
child-BeanContextChild -
requestor- запросчик -
service- сервис
getCurrentServiceClasses
public Iterator<Object> getCurrentServiceClasses()
BeanContextServices- Определено в:
-
getCurrentServiceClassesв интерфейсеBeanContextServices - Возвращает:
- итератор для всех зарегистрированных на данный момент классов сервисов.
getCurrentServiceSelectors
public Iterator<?> getCurrentServiceSelectors(Class<?> serviceClass)
BeanContextServices- Определено в:
-
getCurrentServiceSelectorsв интерфейсеBeanContextServices - Параметры:
-
serviceClass- указанный сервис - Возвращает:
- итератор для всех доступных селекторов сервиса (если таковые имеются) для указанного сервиса.
serviceAvailable
public void serviceAvailable(BeanContextServiceAvailableEvent bcssae)
- Specified by:
-
serviceAvailablein interfaceBeanContextServicesListener - Overrides:
-
serviceAvailablein classBeanContextChildSupport - Parameters:
-
bcssae- Событие BeanContextServiceAvailableEvent, сгенерированное в результате доступности сервиса
serviceRevoked
public void serviceRevoked(BeanContextServiceRevokedEvent bcssre)
- Specified by:
-
serviceRevokedin interfaceBeanContextServiceRevokedListener - Overrides:
-
serviceRevokedin classBeanContextChildSupport - Parameters:
-
bcssre- СобытиеBeanContextServiceRevokedEvent, сгенерированное в результате отзыва сервиса
getChildBeanContextServicesListener
protected static final BeanContextServicesListener getChildBeanContextServicesListener(Object child)
- Parameters:
-
child- указанный дочерний элемент - Returns:
- слушатель BeanContextServicesListener (если есть) указанного дочернего элемента
childJustRemovedHook
protected void childJustRemovedHook(Object child, BeanContextSupport.BCSChild bcsc)
- Overrides:
-
childJustRemovedHookin classBeanContextSupport - Parameters:
-
child- дочерний элемент -
bcsc- BCSChild
releaseBeanContextResources
protected void releaseBeanContextResources()
- Overrides:
-
releaseBeanContextResourcesin classBeanContextChildSupport
initializeBeanContextResources
protected void initializeBeanContextResources()
- Overrides:
-
initializeBeanContextResourcesin classBeanContextChildSupport
fireServiceAdded
protected final void fireServiceAdded(Class<?> serviceClass)
BeanContextServiceEvent о новом сервисе.- Parameters:
-
serviceClass- класс сервиса
fireServiceAdded
protected final void fireServiceAdded(BeanContextServiceAvailableEvent bcssae)
BeanContextServiceAvailableEvent , указывающее, что новый сервис стал доступен.- Parameters:
-
bcssae-BeanContextServiceAvailableEvent
fireServiceRevoked
protected final void fireServiceRevoked(BeanContextServiceRevokedEvent bcsre)
BeanContextServiceEvent об отзыве сервиса.- Parameters:
-
bcsre-BeanContextServiceRevokedEvent
fireServiceRevoked
protected final void fireServiceRevoked(Class<?> serviceClass, boolean revokeNow)
BeanContextServiceRevokedEvent о том, что определённый сервис больше недоступен.- Parameters:
-
serviceClass- класс сервиса -
revokeNow- нужно ли отзывать событие сейчас
bcsPreSerializationHook
protected void bcsPreSerializationHook(ObjectOutputStream oos) throws IOException
- Overrides:
-
bcsPreSerializationHookin classBeanContextSupport - Parameters:
-
oos-ObjectOutputStreamдля использования во время сериализации - Throws:
-
IOException- если сериализация не удалась
bcsPreDeserializationHook
protected void bcsPreDeserializationHook(ObjectInputStream ois) throws IOException, ClassNotFoundException
- Overrides:
-
bcsPreDeserializationHookin classBeanContextSupport - Parameters:
-
ois-ObjectInputStreamдля использования во время десериализации - Throws:
-
IOException- если десериализация не удалась -
ClassNotFoundException- если необходимые классы не найдены
© 1993, 2023, 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/21/docs/api/java.desktop/java/beans/beancontext/BeanContextServicesSupport.html