©
本文檔使用 php中文網手册 發布
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object javax.management.remote.rmi.RMIConnectionImpl
public class RMIConnectionImpl
RMIConnection
接口的实现。用户代码不经常引用此类。
构造方法摘要 | |
---|---|
RMIConnectionImpl(RMIServerImpl rmiServer,
String connectionId,
ClassLoader defaultClassLoader,
Subject subject,
Map<String,?> env)
构造新的 RMIConnection 。 |
方法摘要 | |
---|---|
void |
addNotificationListener(ObjectName name,
ObjectName listener,
MarshalledObject filter,
MarshalledObject handback,
Subject delegationSubject)
处理 MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 方法。 |
Integer[] |
addNotificationListeners(ObjectName[] names,
MarshalledObject[] filters,
Subject[] delegationSubjects)
处理 MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 方法。 |
void |
close()
关闭此连接。 |
ObjectInstance |
createMBean(String className,
ObjectName name,
MarshalledObject params,
String[] signature,
Subject delegationSubject)
处理 MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) 方法。 |
ObjectInstance |
createMBean(String className,
ObjectName name,
ObjectName loaderName,
MarshalledObject params,
String[] signature,
Subject delegationSubject)
处理 MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) 方法。 |
ObjectInstance |
createMBean(String className,
ObjectName name,
ObjectName loaderName,
Subject delegationSubject)
处理 MBeanServerConnection.createMBean(String, ObjectName, ObjectName) 方法。 |
ObjectInstance |
createMBean(String className,
ObjectName name,
Subject delegationSubject)
处理 MBeanServerConnection.createMBean(String, ObjectName) 方法。 |
NotificationResult |
fetchNotifications(long clientSequenceNumber,
int maxNotifications,
long timeout)
检索来自连接器服务器的通知。 |
Object |
getAttribute(ObjectName name,
String attribute,
Subject delegationSubject)
处理 MBeanServerConnection.getAttribute(ObjectName, String) 方法。 |
AttributeList |
getAttributes(ObjectName name,
String[] attributes,
Subject delegationSubject)
处理 MBeanServerConnection.getAttributes(ObjectName, String[]) 方法。 |
String |
getConnectionId()
返回连接 ID。 |
String |
getDefaultDomain(Subject delegationSubject)
处理 MBeanServerConnection.getDefaultDomain() 方法。 |
String[] |
getDomains(Subject delegationSubject)
处理 MBeanServerConnection.getDomains() 方法。 |
Integer |
getMBeanCount(Subject delegationSubject)
处理 MBeanServerConnection.getMBeanCount() 方法。 |
MBeanInfo |
getMBeanInfo(ObjectName name,
Subject delegationSubject)
处理 MBeanServerConnection.getMBeanInfo(ObjectName) 方法。 |
ObjectInstance |
getObjectInstance(ObjectName name,
Subject delegationSubject)
处理 MBeanServerConnection.getObjectInstance(ObjectName) 方法。 |
Object |
invoke(ObjectName name,
String operationName,
MarshalledObject params,
String[] signature,
Subject delegationSubject)
处理 MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) 方法。 |
boolean |
isInstanceOf(ObjectName name,
String className,
Subject delegationSubject)
处理 MBeanServerConnection.isInstanceOf(ObjectName, String) 方法。 |
boolean |
isRegistered(ObjectName name,
Subject delegationSubject)
处理 MBeanServerConnection.isRegistered(ObjectName) 方法。 |
Set<ObjectInstance> |
queryMBeans(ObjectName name,
MarshalledObject query,
Subject delegationSubject)
处理 MBeanServerConnection.queryMBeans(ObjectName, QueryExp) 方法。 |
Set<ObjectName> |
queryNames(ObjectName name,
MarshalledObject query,
Subject delegationSubject)
处理 MBeanServerConnection.queryNames(ObjectName, QueryExp) 方法。 |
void |
removeNotificationListener(ObjectName name,
ObjectName listener,
MarshalledObject filter,
MarshalledObject handback,
Subject delegationSubject)
处理 MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) 方法。 |
void |
removeNotificationListener(ObjectName name,
ObjectName listener,
Subject delegationSubject)
处理 MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) 方法。 |
void |
removeNotificationListeners(ObjectName name,
Integer[] listenerIDs,
Subject delegationSubject)
处理 removeNotificationListener(ObjectName, NotificationListener) 和 removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) 方法。 |
void |
setAttribute(ObjectName name,
MarshalledObject attribute,
Subject delegationSubject)
处理 MBeanServerConnection.setAttribute(ObjectName, Attribute) 方法。 |
AttributeList |
setAttributes(ObjectName name,
MarshalledObject attributes,
Subject delegationSubject)
处理 MBeanServerConnection.setAttributes(ObjectName, AttributeList) 方法。 |
String |
toString()
返回此对象的字符串表示形式。 |
void |
unreferenced()
在运行时确定引用列表(引用远程对象的客户机列表)变空之后的某个时候由 RMI 运行时调用。 |
void |
unregisterMBean(ObjectName name,
Subject delegationSubject)
处理 MBeanServerConnection.unregisterMBean(ObjectName) 方法。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public RMIConnectionImpl(RMIServerImpl rmiServer, String connectionId, ClassLoader defaultClassLoader, Subject subject, Map<String,?> env)
RMIConnection
。此连接即可与 JRMP 一起使用,也可与 IIOP 传输一起使用。此对象并不导出其自身:应由调用者将其适当地导出(请参阅 RMIJRMPServerImpl.makeClient(String,Subject)
和 RMIIIOPServerImpl.makeClient(String,Subject)
)。
rmiServer
- 为其创建此连接的 RMIServerImpl 对象。如果该参数为 null,则行为不明确。connectionId
- 该连接的 ID。如果该参数为 null,则行为不明确。defaultClassLoader
- 将在反序列化编组对象时使用的默认 ClassLoader。可以为 null,表示引导类加载器。subject
- 将供授权使用的经验证的主题。可以为 null,表示尚未验证任何主题。env
- 包含新的 RMIServerImpl
属性的环境。可以为 null,等效于一个空映射。方法详细信息 |
---|
public String getConnectionId() throws IOException
RMIConnection
复制的描述返回连接 ID。对于每个到给定的 RMI 连接器服务器的开放连接,此字符串都不相同。
RMIConnection
中的 getConnectionId
IOException
- 如果出现通用通信异常。RMIConnector.connect
public void close() throws IOException
RMIConnection
复制的描述关闭此连接。从此方法返回时,不导出实现此接口的 RMI 对象,因此对它的进一步远程调用将失败。
Closeable
中的 close
RMIConnection
中的 close
IOException
- 如果无法关闭连接,或 Remote 对象无法被导出,或者在传输远程关闭请求时出现通信故障。public void unreferenced()
Unreferenced
复制的描述
Unreferenced
中的 unreferenced
public ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
RMIConnection
复制的描述MBeanServerConnection.createMBean(String, ObjectName)
方法。
RMIConnection
中的 createMBean
className
- 要实例化的 MBean 的类名称。name
- MBean 的对象名。可以为 null。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
,它包含新实例化的 MBean 的 ObjectName
和 Java 类名。如果所包含的 ObjectName
为 n
,则所包含的 Java 类名为 getMBeanInfo(n)
.getClassName()
。
ReflectionException
- 在尝试调用 MBean 的构造方法的过程中出现的、包装了 java.lang.ClassNotFoundException
或 java.lang.Exception
的异常。
InstanceAlreadyExistsException
- MBean 已处于 MBean 服务器的控制之下。
MBeanRegistrationException
- MBean 的 preRegister
(MBeanRegistration
接口)方法已抛出异常。不对 MBean 进行注册。
MBeanException
- MBean 的构造方法已抛出异常。
NotCompliantMBeanException
- 该类不是一个遵守 JMX 的 MBean。
IOException
- 如果出现通用通信异常。public ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.createMBean(String, ObjectName, ObjectName)
方法。
RMIConnection
中的 createMBean
className
- 要实例化的 MBean 的类名称。name
- MBean 的对象名。可以为 null。loaderName
- 要使用的类加载器的对象名。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
,它包含新实例化的 MBean 的 ObjectName
和 Java 类名。如果所包含的 ObjectName
为 n
,则所包含的 Java 类名为 getMBeanInfo(n)
.getClassName()
。
ReflectionException
- 在尝试调用 MBean 的构造方法的过程中出现的、包装了 java.lang.ClassNotFoundException
或 java.lang.Exception
的异常。
InstanceAlreadyExistsException
- MBean 已处于 MBean 服务器的控制之下。
MBeanRegistrationException
- MBean 的 preRegister
(MBeanRegistration
接口)方法已抛出异常。不对 MBean 进行注册。
MBeanException
- MBean 的构造方法已抛出异常。
NotCompliantMBeanException
- 该类不是一个遵守 JMX 的 MBean。
InstanceNotFoundException
- 指定的类加载器未在 MBean 服务器中注册。
IOException
- 如果出现通用通信异常。public ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
RMIConnection
复制的描述MBeanServerConnection.createMBean(String, ObjectName, Object[], String[])
方法。Object[]
参数包装在 MarshalledObject
中。
RMIConnection
中的 createMBean
className
- 要实例化的 MBean 的类名称。name
- MBean 的对象名。可以为 null。params
- 包含要调用的构造方法的参数的数组,数组封装在 MarshalledObject
中。封装的数组可以为 null,其等效于一个空数组。signature
- 包含要调用的构造方法的签名的数组。可以为 null,等效于一个空数组。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
,它包含新实例化的 MBean 的 ObjectName
和 Java 类名。如果所包含的 ObjectName
为 n
,则所包含的 Java 类名为 getMBeanInfo(n)
.getClassName()
。
ReflectionException
- 在尝试调用 MBean 的构造方法的过程中出现的、包装了 java.lang.ClassNotFoundException
或 java.lang.Exception
的异常。
InstanceAlreadyExistsException
- MBean 已处于 MBean 服务器的控制之下。
MBeanRegistrationException
- MBean 的 preRegister
(MBeanRegistration
接口)方法已抛出异常。不对 MBean 进行注册。
MBeanException
- MBean 的构造方法已抛出异常。
NotCompliantMBeanException
- 该类不是一个遵守 JMX 的 MBean。
IOException
- 如果出现通用通信异常。public ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[])
方法。Object[]
参数包装在 MarshalledObject
中。
RMIConnection
中的 createMBean
className
- 要实例化的 MBean 的类名称。name
- MBean 的对象名。可以为 null。loaderName
- 要使用的类加载器的对象名。params
- 包含要调用的构造方法的参数的数组,数组封装在 MarshalledObject
中。封装的数组可以为 null,其等效于一个空数组。signature
- 包含要调用的构造方法的签名的数组。可以为 null,等效于一个空数组。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
,它包含新实例化的 MBean 的 ObjectName
和 Java 类名。如果所包含的 ObjectName
为 n
,则所包含的 Java 类名为 getMBeanInfo(n)
.getClassName()
。
ReflectionException
- 在尝试调用 MBean 的构造方法的过程中出现的、包装了 java.lang.ClassNotFoundException
或 java.lang.Exception
的异常。
InstanceAlreadyExistsException
- MBean 已处于 MBean 服务器的控制之下。
MBeanRegistrationException
- MBean 的 preRegister
(MBeanRegistration
接口)方法已抛出异常。不对 MBean 进行注册。
MBeanException
- MBean 的构造方法已抛出异常。
NotCompliantMBeanException
- 该类不是一个遵守 JMX 的 MBean。
InstanceNotFoundException
- 指定的类加载器未在 MBean 服务器中注册。
IOException
- 如果出现通用通信异常。public void unregisterMBean(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, MBeanRegistrationException, IOException
RMIConnection
复制的描述MBeanServerConnection.unregisterMBean(ObjectName)
方法。
RMIConnection
中的 unregisterMBean
name
- 要注册的 MBean 的对象名。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
MBeanRegistrationException
- MBean 的 preDeregister (MBeanRegistration
接口)方法已抛出异常。
IOException
- 如果出现通用通信异常。public ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.getObjectInstance(ObjectName)
方法。
RMIConnection
中的 getObjectInstance
name
- MBean 的对象名。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
。所包含的 ObjectName
为 name
,所包含的类名称为 getMBeanInfo(name)
.getClassName()
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
IOException
- 如果出现通用通信异常。public Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.queryMBeans(ObjectName, QueryExp)
方法。QueryExp
包装在 MarshalledObject
中。
RMIConnection
中的 queryMBeans
name
- 标识要检索的 MBean 的对象名模式。如果指定了 null 或未指定任何域或关键字属性,则将检索所有已注册的 MBean。query
- 用于选择 MBean 的查询表达式,它封装在 MarshalledObject
中。如果 MarshalledObject
封装了一个 null 值,则选择 MBean 时不使用任何查询表达式。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
ObjectInstance
对象集。如果没有任何 MBean 满足此查询,则返回一个空列表。
IOException
- 如果出现通用通信异常。public Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.queryNames(ObjectName, QueryExp)
方法。QueryExp
包装在 MarshalledObject
中。
RMIConnection
中的 queryNames
name
- 标识要检索的 MBean 名称的对象名模式。如果指定了 null 或未指定任何域或关键字属性,则将检索所有已注册的 MBean 的名称。query
- 用于选择 MBean 的查询表达式,它封装在 MarshalledObject
中。如果 MarshalledObject
封装了一个 null 值,则选择 MBean 时不使用任何查询表达式。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
IOException
- 如果出现通用通信异常。public boolean isRegistered(ObjectName name, Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.isRegistered(ObjectName)
方法。
RMIConnection
中的 isRegistered
name
- 要检查的 MBean 的对象名。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
IOException
- 如果出现通用通信异常。public Integer getMBeanCount(Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.getMBeanCount()
方法。
RMIConnection
中的 getMBeanCount
delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
IOException
- 如果出现通用通信异常。public Object getAttribute(ObjectName name, String attribute, Subject delegationSubject) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.getAttribute(ObjectName, String)
方法。
RMIConnection
中的 getAttribute
name
- 将要从其检索属性的 MBean 的对象名。attribute
- 指定要检索的属性名称的字符串。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
MBeanException
- 包装了由 MBean 的获取方法抛出的异常。
AttributeNotFoundException
- 指定的属性在 MBean 中无法访问。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
ReflectionException
- 包装了尝试调用获取方法时抛出的 java.lang.Exception
。
IOException
- 如果出现通用通信异常。RMIConnection.setAttribute(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)
public AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.getAttributes(ObjectName, String[])
方法。
RMIConnection
中的 getAttributes
name
- 从其检索属性的 MBean 的对象名。attributes
- 要检索的属性的列表。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
ReflectionException
- 尝试调用 Dynamic MBean 的 getAttributes 方法时出现的异常。
IOException
- 如果出现通用通信异常。RMIConnection.setAttributes(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)
public void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.setAttribute(ObjectName, Attribute)
方法。Attribute
参数包装在 MarshalledObject
中。
RMIConnection
中的 setAttribute
name
- 在其中设置属性的 MBean 的名称。attribute
- 要设置的属性的标识及要设置的值,封装在 MarshalledObject
中。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
AttributeNotFoundException
- 指定的属性在 MBean 中无法访问。
InvalidAttributeValueException
- 为属性指定的值无效。
MBeanException
- 包装了由 MBean 的设置方法抛出的异常。
ReflectionException
- 包装了尝试调用设置方法时抛出的 java.lang.Exception
。
IOException
- 如果出现通用通信异常。RMIConnection.getAttribute(javax.management.ObjectName, java.lang.String, javax.security.auth.Subject)
public AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.setAttributes(ObjectName, AttributeList)
方法。AttributeList
参数包装在 MarshalledObject
中。
RMIConnection
中的 setAttributes
name
- 要在其中设置属性的 MBean 的对象名。attributes
- 属性列表:要设置的属性的标识及要设置的值,封装在 MarshalledObject
中。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
ReflectionException
- 尝试调用 Dynamic MBean 的 getAttributes 方法时出现的异常。
IOException
- 如果出现通用通信异常。RMIConnection.getAttributes(javax.management.ObjectName, java.lang.String[], javax.security.auth.Subject)
public Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject) throws InstanceNotFoundException, MBeanException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.invoke(ObjectName, String, Object[], String[])
方法。Object[]
参数包装在 MarshalledObject
中。
RMIConnection
中的 invoke
name
- 将在其上调用此方法的 MBean 的对象名。operationName
- 要调用的操作的名称。params
- 包含调用操作时将设置的参数的数组,它封装在 MarshalledObject
中。封装的数组可以为 null,其等效于一个空数组。signature
- 包含操作的签名的数组。该类对象将使用与加载在其上调用了操作的 MBean 过程中所用的相同的类加载器加载。可以为 null,等效于一个空数组。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
MBeanException
- 包装了由 MBean 的调用的方法抛出的异常。
ReflectionException
- 包装了尝试调用此方法时抛出的 java.lang.Exception
。
IOException
- 如果出现通用通信异常。public String getDefaultDomain(Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.getDefaultDomain()
方法。
RMIConnection
中的 getDefaultDomain
delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
IOException
- 如果出现通用通信异常。public String[] getDomains(Subject delegationSubject) throws IOException
RMIConnection
复制的描述MBeanServerConnection.getDomains()
方法。
RMIConnection
中的 getDomains
delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
IOException
- 如果出现通用通信异常。public MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException
RMIConnection
复制的描述MBeanServerConnection.getMBeanInfo(ObjectName)
方法。
RMIConnection
中的 getMBeanInfo
name
- 要分析的 MBean 的名称delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证委托 principal,则为 null
。
MBeanInfo
的实例。
InstanceNotFoundException
- 未找到指定的 MBean。
IntrospectionException
- 自行推算过程中出现的异常。
ReflectionException
- 尝试调用 Dynamic MBean 的 getMBeanInfo 方法时出现的异常。
IOException
- 如果出现通用通信异常。public boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject) throws InstanceNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.isInstanceOf(ObjectName, String)
方法。
RMIConnection
中的 isInstanceOf
name
- MBean 的 ObjectName
。className
- 类的名称。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 指定的 MBean 未在 MBean 服务器中注册。
IOException
- 如果出现通用通信异常。public Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects) throws InstanceNotFoundException, IOException
RMIConnection
复制的描述处理 MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)
方法。
供来自给定 MBean 的与给定的过滤器匹配的通知使用的记录。远程客户端以后可使用 fetchNotifications
方法检索该通知。
对于每个侦听器,原始的 NotificationListener
和 handback
保留在客户端;为帮助客户端识别它们,服务器生成并返回一个唯一的 listenerID
。该 listenerID
与 Notifications
一起转发到远程客户端。
如果给定 (name, filter) 对中有任何一对无法注册,则操作失败并抛出异常,不注册任何名称或过滤器。
RMIConnection
中的 addNotificationListeners
names
- 标识发出 Notification 的 MBean 的 ObjectNames
。filters
- NotificationFilters
的编组表示形式的数组。此数组的元素可以为 null。delegationSubjects
- 侦听器代表其添加的 Subjects
。此数组的元素可以为 null。同样,delegationSubjects
参数本身可以为 null,它表示具有 null 值的数组,数组大小与 names
和 filters
数组大小相同。
listenerIDs
数组。此数组具有与参数个数相同的元素数。
InstanceNotFoundException
- 如果 names
中有一个不与任何已注册的 MBean 对应。
IOException
- 如果出现通用通信异常。public void addNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)
方法。NotificationFilter
参数包装在 MarshalledObject
中。Object
(handback) 参数也包装在 MarshalledObject
中。
RMIConnection
中的 addNotificationListener
name
- 应在其上添加侦听器的 MBean 的名称。listener
- 将处理由已注册的 MBean 发出通知的侦听器的对象名。filter
- 过滤器对象,封装在 MarshalledObject
中。如果封装在 MarshalledObject
中的过滤器的值为 null,则在对通知处理之前不执行任何过滤。handback
- 通知发出时发送到侦听器的上下文,封装在 MarshalledObject
中。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 通知侦听器或通知广播器的 MBean 名称不与注册的任何 MBean 匹配。
IOException
- 如果出现通用通信异常。RMIConnection.removeNotificationListener(ObjectName, ObjectName, Subject)
,
RMIConnection.removeNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)
public void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
RMIConnection
复制的描述处理 removeNotificationListener(ObjectName, NotificationListener)
和 removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)
方法。
此方法从 MBean 服务器中的给定 MBean 中移除一个或多个 NotificationListener
。
NotificationListeners
通过从 RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[], Subject[])
方法返回的 ID 标识。
RMIConnection
中的 removeNotificationListeners
name
- 标识发出 Notification 的 MBean 的 ObjectName
。listenerIDs
- 与要移除的侦听器对应的 ID。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 如果给定的 name
不对应任何已注册的 MBean。
ListenerNotFoundException
- 如果有一个侦听器在服务器端无法找到。当 MBean 出于某种原因丢弃了一个侦听器,而未通过调用 MBeanServer.removeNotificationListener
丢弃时,出现该异常。
IOException
- 如果出现通用通信异常。public void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName)
方法。
RMIConnection
中的 removeNotificationListener
name
- 应在其上移除侦听器的 MBean 的名称。listener
- 要移除的侦听器的对象名。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 所提供的 MBean 名称不与任何已注册 MBean 匹配。
ListenerNotFoundException
- 侦听器未在 MBean 中注册。
IOException
- 如果出现通用通信异常。RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
public void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
RMIConnection
复制的描述MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)
方法。NotificationFilter
参数包装在 MarshalledObject
中。Object
参数也包装在 MarshalledObject
中。
RMIConnection
中的 removeNotificationListener
name
- 应在其上移除侦听器的 MBean 的名称。listener
- 原先添加到此 MBean 的侦听器。filter
- 添加侦听器时指定的过滤器,它封装在 MarshalledObject
中。handback
- 添加侦听器时指定的 handback,它封装在 MarshalledObject
中。delegationSubject
- 包含委托 principal 的 Subject
,如果使用了验证 principal,则为 null
。
InstanceNotFoundException
- 所提供的 MBean 名称不与任何已注册 MBean 匹配。
ListenerNotFoundException
- 侦听器未在 MBean 中注册,或者未用给定的过滤器和 handback 注册。
IOException
- 如果出现通用通信异常。RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
public NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout) throws IOException
RMIConnection
复制的描述检索来自连接器服务器的通知。该方法可能阻塞,直到至少有一个通知,或者直到达到指定的超时时间。该方法还可在任何时间返回零通知。
如果通知的序列号不小于 clientSequenceNumber
,并且此客户端已为 MBean 生成通知至少注册了一个侦听器(带一个接收通知的过滤器),则通知可包含在该结果中。对通知感兴趣的各侦听器由从 RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[], Subject[])
返回的整数型 ID 标识。
RMIConnection
中的 fetchNotifications
clientSequenceNumber
- 客户端感兴趣的第一个序列号。如果为负,它表示下一个通知将具有的序列号。maxNotifications
- 返回的不同通知的最大数。如果同一个通知出现了多次,则返回的 NotificationResult
中的 TargetedNotification
数组可能包含比此数更多的元素。如果该参数为负,则行为不明确。timeout
- 等待通知到达的最长时间,以毫秒为单位。它可以是 0,指示在无通知时该方法不应等待,而应立即返回。它可以为 Long.MAX_VALUE
,指示无超时。如果该参数为负,则行为不明确。
NotificationResult
。
IOException
- 如果出现通用通信异常。public String toString()
返回此对象的字符串表示形式。通常情况下,toString
方法会返回一个“按文本方式表示”此对象的字符串。结果应是一个简明而丰富的表示,它方便人们阅读。
Object
中的 toString
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。