java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

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  Object changeInfo
          包含关于生成此事件的更改的信息。
protected  Binding newBinding
          包含关于更改后对象的信息。
static int OBJECT_ADDED
          指示已经添加了新对象的命名事件类型。
static int OBJECT_CHANGED
          指示已经更改了某个对象的命名事件类型。
static int OBJECT_REMOVED
          指示已经移除了某个对象的命名事件类型。
static int OBJECT_RENAMED
          指示已经重命名了某个对象的命名事件类型。
protected  Binding oldBinding
          包含关于更改前对象的信息。
protected  int type
          包含此事件的类型。
 
从类 java.util.EventObject 继承的字段
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()
          返回此事件的类型。
 
从类 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
包含关于更改前对象的信息。


newBinding

protected Binding newBinding
包含关于更改后对象的信息。

构造方法详细信息

NamingEvent

public NamingEvent(EventContext source,
                   int type,
                   Binding newBd,
                   Binding oldBd,
                   Object changeInfo)
构造一个 NamingEvent 的实例。

newBdoldBd 中的名称将相对于事件源 source 进行解析。 对于 OBJECT_ADDED 事件类型,newBd 不得为 null。对于 OBJECT_REMOVED 事件类型,oldBd 不得为 null。对于 OBJECT_CHANGED 事件类型,newBdoldBd 不得为 null。对于 OBJECT_RENAMED 事件类型,如果新绑定或旧绑定在已注册侦听器的范围之外,则 newBdoldBd 中的一个可以为 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 的实现是线程安全的(也不保证 EventContextContext 的子接口)。有关线程问题的更多信息,请参阅包描述

返回:
触发此事件的非 null 上下文。

getOldBinding

public Binding getOldBinding()
检索更改前对象的绑定。

如果对象存在于相对源上下文 (getEventContext()) 进行更改之前,则绑定必须为非 null。即对于 OBJECT_REMOVEDOBJECT_CHANGED 它必须为非 null。对于 OBJECT_RENAMED,如果重命名前对象在注册侦听器关注的范围之外,则它为 null;如果对象在重命名前在该范围之内,则它为非 null。

绑定中的名称将相对于事件源 getEventContext() 进行解析。如果这类信息不可用,则 Binding.getObject() 返回的对象为 null。

返回:
更改前对象的绑定(可能为 null)。

getNewBinding

public Binding getNewBinding()
检索更改后对象的绑定。

如果对象存在于相对源上下文 (getEventContext()) 进行更改之后,则绑定必须为非 null。即对于 OBJECT_ADDEDOBJECT_CHANGED 它必须为非 null。对于 OBJECT_RENAMED,如果重命名后对象在注册侦听器关注的范围之外,则它为 null;如果对象在重命名后在该范围之内,则它为非 null。

绑定中的名称将相对于事件源 getEventContext() 进行解析。如果这类信息不可用,则 Binding.getObject() 返回的对象为 null。

返回:
更改后对象的绑定(可能为 null)。

getChangeInfo

public Object getChangeInfo()
检索此事件的更改信息。更改信息的值是特定于服务的。例如,它可以是用于标识服务器上更改日志中所做更改的 ID。

返回:
此事件的更改信息(可能为 null)。

dispatch

public void dispatch(NamingListener listener)
对此事件调用适当的侦听器方法。此方法的默认实现处理以下事件类型:OBJECT_ADDEDOBJECT_REMOVEDOBJECT_RENAMEDOBJECT_CHANGED

侦听器方法与此方法在同一个线程中执行。有关线程问题的更多信息,请参阅包描述

参数:
listener - 非 null 侦听器。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策