Класс NamingEvent
- Все реализованные интерфейсы:
Serializable
public class NamingEvent extends EventObject
Состояние NamingEvent состоит из
- Источника события:
EventContext, сгенерировавшего это событие. - Типа события.
- Новой привязки: информации об объекте после изменения.
- Старой привязки: информации об объекте до изменения.
- Информации об изменении: сведений об изменении, вызвавшем это событие; обычно это информация, специфичная для поставщика службы или сервера.
Обратите внимание, что источником события всегда является тот же самый экземпляр EventContext, с которым зарегистрировал слушателя. Кроме того, имена привязок в NamingEvent всегда относительны к этому экземпляру. Например, предположим, что слушатель выполняет следующую регистрацию:
NamespaceChangeListener listener = ...;
src.addNamingListener("x", SUBTREE_SCOPE, listener);
Если впоследствии будет удален объект с именем «x/y», соответствующее NamingEvent (evt) должно содержать:
evt.getEventContext() == src
evt.getOldBinding().getName().equals("x/y")
Необходимо соблюдать осторожность, если несколько потоков одновременно обращаются к одному и тому же EventContext. Дополнительные сведения о проблемах многопоточности см. в описании пакета.- Начиная с версии:
- 1.3
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Object |
changeInfo |
Содержит информацию об изменении, вызвавшем это событие. |
protected Binding |
newBinding |
Содержит информацию об объекте после изменения. |
static final int |
OBJECT_ADDED |
Тип события именования, указывающий на добавление нового объекта. |
static final int |
OBJECT_CHANGED |
Тип события именования, указывающий на изменение объекта. |
static final int |
OBJECT_REMOVED |
Тип события именования, указывающий на удаление объекта. |
static final int |
OBJECT_RENAMED |
Тип события именования, указывающий на переименование объекта. |
protected Binding |
oldBinding |
Содержит информацию об объекте до изменения. |
protected int |
type |
Содержит тип этого события. |
Поля, объявленные в классе EventObject
source
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
NamingEvent |
Создает экземпляр NamingEvent. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
dispatch |
Вызывает соответствующий метод слушателя для этого события. |
Object |
getChangeInfo() |
Получает информацию об изменении для этого события. |
EventContext |
getEventContext() |
Получает источник события, сгенерировавший это событие. |
Binding |
getNewBinding() |
Получает привязку объекта после изменения. |
Binding |
getOldBinding() |
Получает привязку объекта до изменения. |
int |
getType() |
Возвращает тип этого события. |
Методы, объявленные в классе EventObject
getSource, toString
Подробное описание полей
OBJECT_ADDED
public static final int OBJECT_ADDED
0.- См. также:
OBJECT_REMOVED
public static final int OBJECT_REMOVED
1.- См. также:
OBJECT_RENAMED
public static final int OBJECT_RENAMED
Старая/новая привязка в NamingEvent может иметь значение null, если старое или новое имя находится за пределами области, для которой зарегистрирован слушатель.
При переименовании внутреннего узла дерева пространства имен для генерации события переименования следует использовать самый верхний узел, входящий в область действия слушателя. Возможность поддержки такого поведения зависит от поставщика. Например, служба может генерировать уведомления о переименовании для всех потомков измененного внутреннего узла, и соответствующий поставщик может быть не в состоянии предотвратить передачу этих уведомлений слушателям.
Значение этой константы — 2.
- См. также:
OBJECT_CHANGED
public static final int OBJECT_CHANGED
Значение этой константы — 3.
- См. также:
changeInfo
protected Object changeInfo
type
protected int type
- См. также:
oldBinding
protected Binding oldBinding
newBinding
protected Binding newBinding
Подробное описание конструкторов
NamingEvent
public NamingEvent(EventContext source, int type, Binding newBd, Binding oldBd, Object changeInfo)
NamingEvent. Имена в newBd и oldBd должны разрешаться относительно источника события source. Для типа события OBJECT_ADDED значение newBd не должно быть null. Для типа события OBJECT_REMOVED значение oldBd не должно быть null. Для типа события OBJECT_CHANGED значения newBd и oldBd не должны быть null. Для типа события OBJECT_RENAMED одно из значений newBd или oldBd может быть null, если новая или старая привязка находится за пределами области, для которой зарегистрирован слушатель.
- Параметры:
-
source— контекст, сгенерировавший это событие; не должен быть null. -
type— тип события. -
newBd— привязка до изменения, которая может быть null. См. описание метода. -
oldBd— привязка после изменения, которая может быть null. См. описание метода. -
changeInfo— объект, содержащий информацию об изменении и, возможно, имеющий значение null. - См. также:
Подробное описание методов
getType
public int getType()
- Возвращает:
- Тип этого события.
- См. также:
getEventContext
public EventContext getEventContext()
EventObject.getSource(). Если результат этого метода используется для доступа к источнику события, например для поиска объекта или получения его атрибутов, его необходимо заблокировать, поскольку для реализаций Context потокобезопасность не гарантируется (а EventContext является подинтерфейсом Context). Дополнительные сведения о проблемах многопоточности см. в описании пакета.
- Возвращает:
- Контекст, сгенерировавший это событие; не null.
getOldBinding
public Binding getOldBinding()
Привязка не должна быть null, если объект существовал до изменения относительно исходного контекста (getEventContext()). То есть она не должна быть null для OBJECT_REMOVED и OBJECT_CHANGED. Для OBJECT_RENAMED она равна null, если объект до переименования находится за пределами области, интересующей слушателя; если объект до переименования находится внутри области, она не равна null.
Имя в привязке должно разрешаться относительно источника события getEventContext(). Объект, возвращаемый Binding.getObject(), может быть null, если такая информация недоступна.
- Возвращает:
- Привязку объекта до изменения, которая может быть null.
getNewBinding
public Binding getNewBinding()
Привязка не должна быть null, если объект существовал после изменения относительно исходного контекста (getEventContext()). То есть она не должна быть null для OBJECT_ADDED и OBJECT_CHANGED. Для OBJECT_RENAMED она равна null, если объект после переименования находится за пределами области, интересующей слушателя; если объект после переименования находится внутри области, она не равна null.
Имя в привязке должно разрешаться относительно источника события getEventContext(). Объект, возвращаемый Binding.getObject(), может быть null, если такая информация недоступна.
- Возвращает:
- Привязку объекта после изменения, которая может быть null.
getChangeInfo
public Object getChangeInfo()
- Возвращает:
- Информацию об изменении для этого события, которая может быть null.
dispatch
public void dispatch(NamingListener listener)
OBJECT_ADDED, OBJECT_REMOVED,
OBJECT_RENAMED, OBJECT_CHANGED. Метод слушателя выполняется в том же потоке, что и этот метод. Дополнительные сведения о проблемах многопоточности см. в описании пакета.
- Параметры:
-
listener— слушатель, не равный null.
© 1993, 2025, 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/25/docs/api/java.naming/javax/naming/event/NamingEvent.html