Класс NamingEvent
- Все реализуемые интерфейсы:
Serializable
public class NamingEvent extends EventObject
Состояние события состоит из
- Источника события: объекта
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 |
Содержит тип этого события. |
Поля, объявленные в классе java.util.EventObject
source
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
NamingEvent |
Создает экземпляр NamingEvent. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
dispatch |
Вызывает соответствующий метод слушателя на этом событии. |
Object |
getChangeInfo() |
Возвращает информацию об изменении для этого события. |
EventContext |
getEventContext() |
Возвращает источник события, который сгенерировал это событие. |
Binding |
getNewBinding() |
Возвращает связывание объекта после изменения. |
Binding |
getOldBinding() |
Возвращает связывание объекта до изменения. |
int |
getType() |
Возвращает тип этого события. |
Методы, объявленные в классе java.util.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()
Связь должна быть ненулевой, если объект существовал перед изменением относительно контекста источника (getEventContext()). То есть, она должна быть ненулевой для OBJECT_REMOVED и OBJECT_CHANGED. Для OBJECT_RENAMED она null, если объект до переименования находится вне области, для которой слушатель зарегистрировал интерес; она ненулевая, если объект находится в области до переименования.
Имя в связи должно быть разрешено относительно источника события getEventContext(). Объект, возвращаемый методом Binding.getObject(), может быть null, если такая информация недоступна.
- Возвращает:
- Возможная null-связь объекта до изменения.
getNewBinding
public Binding getNewBinding()
Связь должна быть ненулевой, если объект существовал после изменения относительно контекста источника (getEventContext()). То есть, она должна быть ненулевой для OBJECT_ADDED и OBJECT_CHANGED. Для OBJECT_RENAMED она 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://download.java.net/java/early_access/jdk24/docs/api/java.naming/javax/naming/event/NamingEvent.html