Spec-Zone.ru › OpenJDK 27

Класс NamingEvent

java.lang.Object
java.util.EventObject
javax.naming.event.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
См. также:
  • NamingListener
  • EventContext
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
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
Модификатор и тип Поле Описание
protected Object source
Объект, в котором изначально произошло событие.

Краткое описание конструкторов

Конструктор Описание
NamingEvent(EventContext source, int type, Binding newBd, Binding oldBd, Object changeInfo)
Создаёт экземпляр NamingEvent.

Краткое описание методов

Модификатор и тип Метод Описание
void dispatch(NamingListener listener)
Вызывает соответствующий метод слушателя для этого события.
Object getChangeInfo()
Получает информацию об изменении для этого события.
EventContext getEventContext()
Получает источник, сгенерировавший это событие.
Binding getNewBinding()
Получает привязку объекта после изменения.
Binding getOldBinding()
Получает привязку объекта до изменения.
int getType()
Возвращает тип этого события.

Методы, объявленные в классе EventObject

getSource, toString
Модификатор и тип Метод Описание
Object getSource()
Объект, в котором изначально произошло событие.
String toString()
Возвращает строковое представление этого EventObject.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация устарела и может быть удалена в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.

Подробное описание полей

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
Содержит тип этого события.
См. также:
  • OBJECT_ADDED
  • OBJECT_REMOVED
  • OBJECT_RENAMED
  • OBJECT_CHANGED

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.
См. также:
  • OBJECT_ADDED
  • OBJECT_REMOVED
  • OBJECT_RENAMED
  • OBJECT_CHANGED

Подробное описание методов

getType

public int getType()
Возвращает тип этого события.
Возвращает:
Тип этого события.
См. также:
  • OBJECT_ADDED
  • OBJECT_REMOVED
  • OBJECT_RENAMED
  • OBJECT_CHANGED

getEventContext

public EventContext getEventContext()
Получает источник, сгенерировавший это событие. Возвращает тот же объект, что и EventObject.getSource().

Если результат этого метода используется для доступа к источнику события, например для поиска объекта или получения его атрибутов, этот источник необходимо блокировать, поскольку потокобезопасность реализаций Context не гарантируется (а EventContext является подинтерфейсом Context). Дополнительные сведения о проблемах многопоточности см. в описании пакета.

Возвращает:
Контекст, сгенерировавший это событие; не должен быть null.

getOldBinding

public Binding getOldBinding()
Получает привязку объекта до изменения.

Привязка должна быть ненулевой, если объект существовал до изменения относительно исходного контекста (getEventContext()). То есть она должна быть ненулевой для OBJECT_REMOVED и OBJECT_CHANGED. Для OBJECT_RENAMED значение равно null, если объект до переименования находится за пределами области, для которой слушатель зарегистрировал интерес; если объект до переименования находится внутри этой области, значение не равно null.

Имя в привязке должно разрешаться относительно источника события getEventContext(). Объект, возвращаемый методом Binding.getObject(), может быть null, если такая информация недоступна.

Возвращает:
Привязку объекта до изменения, которая может быть null.

getNewBinding

public Binding getNewBinding()
Получает привязку объекта после изменения.

Привязка должна быть ненулевой, если объект существовал после изменения относительно исходного контекста (getEventContext()). То есть она должна быть ненулевой для 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.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API