所有类


javax.naming.event
类 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  ObjectchangeInfo
          包含关于生成此事件的更改的信息。
protected  BindingnewBinding
          包含关于更改后对象的信息。
static intOBJECT_ADDED
          指示已经添加了新对象的命名事件类型。
static intOBJECT_CHANGED
          指示已经更改了某个对象的命名事件类型。
static intOBJECT_REMOVED
          指示已经移除了某个对象的命名事件类型。
static intOBJECT_RENAMED
          指示已经重命名了某个对象的命名事件类型。
protected  BindingoldBinding
          包含关于更改前对象的信息。
protected  inttype
          包含此事件的类型。
 
从类 java.util.EventObject 继承的字段
source
 
构造方法摘要
NamingEvent(EventContext source, int type, Binding newBd, Binding oldBd, Object changeInfo)
          构造一个 NamingEvent 的实例。
 
方法摘要
 voiddispatch(NamingListener listener)
          对此事件调用适当的侦听器方法。
 ObjectgetChangeInfo()
          检索此事件的更改信息。
 EventContextgetEventContext()
          检索触发此事件的事件源。
 BindinggetNewBinding()
          检索更改后对象的绑定。
 BindinggetOldBinding()
          检索更改前对象的绑定。
 intgetType()
          返回此事件的类型。
 
从类 java.util.EventObject 继承的方法
getSource, toString
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

字段详细信息

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
包含关于更改前对象的信息。