public interface RMIConnection extends Closeable, Remote
RMI对象用于提出请求从客户端到MBeanServer MBeanServer在服务器端执行。有一个远程对象的每个远程客户端连接到一个RMI连接器实现此接口。
用户代码通常不使用此接口。它被指定为公共的API,API将互操作,不同的实现。
确保客户端的参数将被反序列化,在正确的类加载器的服务器端、客户端的参数,如用于调用方法的参数是包裹在一个MarshalledObject
。此接口的实现,必须首先获得经营目标合适的类装载器,然后反序列化集合参数这类加载器。除注明外,一个参数是一个MarshalledObject
或MarshalledObject[]
必须不为空;如果是行为是未定义的。
类加载的方面在 JMX Specification, version 1.4 PDF文档详细。
在MBeanServerConnection
接口这个接口的并行方法,大多数方法。其中一个方法的行为的一个方面是不明确的,它是在相应的MBeanServerConnection
方法相同。
String getConnectionId() throws IOException
返回字符串连接ID。这是每一个打开的连接到一个给定的RMI连接器服务器不同。
IOException
如果发生一般通信异常。
RMIConnector.connect
void close() throws IOException
关闭此连接。从这个方法返回,RMI对象实现该接口导出,因此进一步的远程调用会失败。
close
接口
AutoCloseable
close
接口
Closeable
IOException
如果连接无法关闭,或远程对象不能被导出,或有一个沟通失败时发送远程关闭请求。
ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
className
- MBean类名称被实例化。
name
- MBean对象名称。可能是空的。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
,含有
ObjectName
和新实例化MBean的java类的名称。如果有
ObjectName
是
n
,包含java类的名字是
getMBeanInfo(n)
.getClassName()
。
ReflectionException
-包装
java.lang.ClassNotFoundException
或
java.lang.Exception
时试图调用MBean的构造函数。
InstanceAlreadyExistsException
的MBean已经是MBean服务器的控制下。
MBeanRegistrationException
-
preRegister
(
MBeanRegistration
接口)的MBean方法抛出异常。MBean将不予注册。
MBeanException
- MBean构造函数抛出了一个异常。
NotCompliantMBeanException
这类不符合JMX MBean。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:类名传入的参数为空,
ObjectName
传入的参数包含模式或没有
ObjectName
是MBean指定。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
className
- MBean类名称被实例化。
name
- MBean对象名称。可能是空的。
loaderName
-类加载器对象的名字被使用。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
,含有
ObjectName
和新实例化MBean的java类的名称。如果有
ObjectName
是
n
,包含java类的名字是
getMBeanInfo(n)
.getClassName()
。
ReflectionException
-包装
java.lang.ClassNotFoundException
或
java.lang.Exception
时试图调用MBean的构造函数。
InstanceAlreadyExistsException
的MBean已经是MBean服务器的控制下。
MBeanRegistrationException
-
preRegister
(
MBeanRegistration
接口)的MBean方法抛出异常。MBean将不予注册。
MBeanException
- MBean构造函数抛出了一个异常。
NotCompliantMBeanException
这类不符合JMX MBean。
InstanceNotFoundException
-指定的类装载器是不是在MBean服务器注册。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:类名传入的参数为空,
ObjectName
传入的参数包含模式或没有
ObjectName
是MBean指定。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, IOException
MBeanServerConnection.createMBean(String, ObjectName, Object[], String[])
。的
Object[]
参数是包裹在一个
MarshalledObject
。
className
- MBean类名称被实例化。
name
- MBean对象名称。可能是空的。
params
-一个数组包含构造函数的参数被调用,封装成一个
MarshalledObject
。封装的阵列可以为零,相当于一个空数组。
signature
-数组包含要调用构造函数的签名。可以是空的,相当于一个空数组。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
,含有
ObjectName
和新实例化MBean的java类的名称。如果有
ObjectName
是
n
,包含java类的名字是
getMBeanInfo(n)
.getClassName()
。
ReflectionException
-包装
java.lang.ClassNotFoundException
或
java.lang.Exception
时试图调用MBean的构造函数。
InstanceAlreadyExistsException
的MBean已经是MBean服务器的控制下。
MBeanRegistrationException
-
preRegister
(
MBeanRegistration
接口)的MBean方法抛出异常。MBean将不予注册。
MBeanException
- MBean构造函数抛出了一个异常。
NotCompliantMBeanException
这类不符合JMX MBean。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:类名传入的参数为空,
ObjectName
传入的参数包含模式,或是没有
ObjectName
MBean指定。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject) throws ReflectionException, InstanceAlreadyExistsException, MBeanRegistrationException, MBeanException, NotCompliantMBeanException, InstanceNotFoundException, IOException
MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[])
。的
Object[]
参数是包裹在一个
MarshalledObject
。
className
- MBean类名称被实例化。
name
- MBean对象名称。可能是空的。
loaderName
-类加载器对象的名字被使用。
params
-一个数组包含构造函数的参数被调用,封装成一个
MarshalledObject
。封装的阵列可以为零,相当于一个空数组。
signature
-数组包含要调用构造函数的签名。可以是空的,相当于一个空数组。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
,含有
ObjectName
和新实例化MBean的java类的名称。如果有
ObjectName
是
n
,包含java类的名字是
getMBeanInfo(n)
.getClassName()
。
ReflectionException
-包装
java.lang.ClassNotFoundException
或
java.lang.Exception
时试图调用MBean的构造函数。
InstanceAlreadyExistsException
的MBean已经是MBean服务器的控制下。
MBeanRegistrationException
-
preRegister
(
MBeanRegistration
接口)的MBean方法抛出异常。MBean将不予注册。
MBeanException
- MBean构造函数抛出了一个异常。
NotCompliantMBeanException
这类不符合JMX MBean。
InstanceNotFoundException
-指定的类装载器是不是在MBean服务器注册。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:类名传入的参数为空,
ObjectName
传入的参数包含模式,或是没有
ObjectName
MBean指定。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
void unregisterMBean(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, MBeanRegistrationException, IOException
name
- MBean对象名称未登记。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
MBeanRegistrationException
- prederegister((
MBeanRegistration
接口)的MBean方法抛出异常。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称为空或MBean当你试图注销是
MBeanServerDelegate
MBean。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IOException
name
- MBean对象名称。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
。所含的
ObjectName
是
name
和包含的类的名字是
getMBeanInfo(name)
.getClassName()
。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称为空。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
name
-对象名称模式识别的MBean进行检索。如果为空或没有域和关键属性被指定,所有MBeans注册将被收回。
query
-查询表达式适用于选择MBeans,封装成一个
MarshalledObject
。如果
MarshalledObject
封装了一个空值没有查询表达式将用于选择MBeans。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
ObjectInstance
MBeans。如果没有MBean满足查询,则返回一个空列表。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject) throws IOException
name
-对象名称模式识别的MBean名进行检索。如果为空或没有域和关键属性被指定,所有注册MBean的名字将被收回。
query
-查询表达式适用于选择MBeans,封装成一个
MarshalledObject
。如果
MarshalledObject
封装了一个空值没有查询表达式将用于选择MBeans。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
boolean isRegistered(ObjectName name, Subject delegationSubject) throws IOException
name
- MBean对象名称进行检查。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称为空。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
Integer getMBeanCount(Subject delegationSubject) throws IOException
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
Object getAttribute(ObjectName name, String attribute, Subject delegationSubject) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException, IOException
name
-对象名称的MBean的属性进行检索。
attribute
-指定要检索的属性的名称。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
AttributeNotFoundException
-指定的属性是不可访问的。
MBeanException
包例外MBean的吸气剂扔。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
ReflectionException
-包装
java.lang.Exception
扔在试图调用getter。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称参数为空或属性为空。
RuntimeMBeanException
包运行时异常的MBean的吸气剂扔。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
setAttribute(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)
AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
name
-对象名称的MBean,检索的属性。
attributes
-目录的属性进行检索。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
ReflectionException
-例外发生在试图调用一个动态MBean的getattributes方法。
RuntimeOperationsException
包装一
java.lang.IllegalArgumentException
:参数对象名称参数为空或属性为空。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
setAttributes(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)
void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject) throws InstanceNotFoundException, AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException, IOException
MBeanServerConnection.setAttribute(ObjectName, Attribute)
。的
Attribute
参数是包裹在一个
MarshalledObject
。
name
- MBean的属性可以设置名称。
attribute
-属性要设置的识别和可设置的值,封装成一个
MarshalledObject
。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
AttributeNotFoundException
-属性中指定的MBean无法访问。
InvalidAttributeValueException
为属性指定的值无效。
MBeanException
包例外MBean的setter抛出。
ReflectionException
-包装
java.lang.Exception
扔在试图调用setter。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称参数为空或属性为空。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
getAttribute(javax.management.ObjectName, java.lang.String, javax.security.auth.Subject)
AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject) throws InstanceNotFoundException, ReflectionException, IOException
MBeanServerConnection.setAttributes(ObjectName, AttributeList)
。的
AttributeList
参数是包裹在一个
MarshalledObject
。
name
-对象名称的MBean的属性来设置。
attributes
-目录属性:属性的识别是集和它们的值被设置为,封装成一个
MarshalledObject
。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
ReflectionException
-例外发生在试图调用一个动态MBean的getattributes方法。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称参数为空或属性为空。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
getAttributes(javax.management.ObjectName, java.lang.String[], javax.security.auth.Subject)
Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject) throws InstanceNotFoundException, MBeanException, ReflectionException, IOException
MBeanServerConnection.invoke(ObjectName, String, Object[], String[])
。的
Object[]
参数是包裹在一个
MarshalledObject
。
name
-对象名称的MBean的方法被调用。
operationName
-操作的名称被调用。
params
-一个数组包含的参数设置操作时调用,封装成一个
MarshalledObject
。封装的数组可以是空的,相当于一个空数组。
signature
-一个数组包含的操作签名。该类的对象将使用相同的类装载器是用于装载MBean操作的调用加载。可以是空的,相当于一个空数组。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
MBeanException
包例外MBean的方法被调用。
ReflectionException
-包装
java.lang.Exception
扔在试图调用的方法。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
RuntimeOperationsException
-包装
IllegalArgumentException
当
name
或
operationName
是空的。
String getDefaultDomain(Subject delegationSubject) throws IOException
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
String[] getDomains(Subject delegationSubject) throws IOException
delegationSubject
-
Subject
包含代表团负责人或
null
如果认证主要是用来代替。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException
name
- MBean名分析
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
MBeanInfo
允许这个MBean的所有属性和操作的检索实例。
IntrospectionException
-例外发生在反思。
InstanceNotFoundException
-没有发现指定的MBean。
ReflectionException
-例外发生在试图调用一个动态MBean的getmbeaninfo。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称为空。
boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject) throws InstanceNotFoundException, IOException
name
- MBean的
ObjectName
。
className
-类的名字。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean指定不在MBean服务器注册。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
RuntimeOperationsException
-包装
java.lang.IllegalArgumentException
:参数对象名称为空。
void addNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, IOException
MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)
。的
NotificationFilter
参数是包裹在一个
MarshalledObject
。的
Object
(盖印)参数也被包裹在一个
MarshalledObject
。
name
-名称的MBean的听众应该增加。
listener
-监听器将处理由注册MBean发出的通知对象的名称。
filter
-过滤对象,封装成一个
MarshalledObject
。如果滤波器封装在
MarshalledObject
具有空值,没有过滤之前将通知进行处理。
handback
-上下文被送到听众当通知发出后,封装成一个
MarshalledObject
。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
-通知监听器MBean名或通知广播员不符合任何注册MBean。
RuntimeOperationsException
-包装
IllegalArgumentException
。MBean的命名
listener
存在但没有实施
NotificationListener
接口,或
name
或
listener
是空的。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
removeNotificationListener(ObjectName, ObjectName, Subject)
,
removeNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)
void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
name
-名称的MBean的听众应该被删除。
listener
-监听器对象名称被删除。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean提供的名称不符合任何注册MBean。
ListenerNotFoundException
-听者不在MBean注册。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
RuntimeOperationsException
-包装
IllegalArgumentException
当
name
或
listener
是空的。
addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)
。的
NotificationFilter
参数是包裹在一个
MarshalledObject
,
Object
参数也被包裹在一个
MarshalledObject
。
name
-名称的MBean的听众应该被删除。
listener
-听者以前添加到这个MBean。
filter
-过滤器,指定当听众加入,封装成一个
MarshalledObject
。
handback
-盖印,指定当听众加入,封装成一个
MarshalledObject
。
delegationSubject
包含代表团负责人或
null
的
Subject
如果认证主要是用来代替。
InstanceNotFoundException
的MBean提供的名称不符合任何注册MBean。
ListenerNotFoundException
-听者不在MBean注册,或不与给定的滤波器和盖印注册。
SecurityException
如果客户端,或授权的主体如果没有执行此操作的权限。
IOException
如果发生一般通信异常。
RuntimeOperationsException
-包装
IllegalArgumentException
当
name
或
listener
是空的。
addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)
Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects) throws InstanceNotFoundException, IOException
登记的通知从给定的MBean,匹配给定的滤波器。远程用户可以利用fetchNotifications
方法检索通知。
每一个听众,原来NotificationListener
和handback
都保存在客户端;为了让客户能够识别他们,服务器生成并返回一个独特的listenerID
。这listenerID
转发给远程客户端与Notifications
。
如果给定的(名称,过滤器)对中的任何一个不能被注册,那么操作失败时有一个例外,并且没有注册的名称或过滤器。
names
-
ObjectNames
识别MBeans发出通知。
filters
-集合表示的
NotificationFilters
数组。这个数组的元素可以是空的。
delegationSubjects
-
Subjects
代表其中的听众正在增加。这个数组的元素可以是空的。同时,
delegationSubjects
本身的参数可以为空,这相当于空值的数组的大小相同的
names
和
filters
阵列。
listenerIDs
识别本地听众的数组。此数组具有相同的元素数量作为参数。
IllegalArgumentException
-如果
names
或
filters
是无效的,或者如果
names
包含一个null元素,或者三阵也不都是一样的大小。
ClassCastException
-如果一个人的
filters
unmarshalls元素作为一个非空对象,不是一个
NotificationFilter
。
InstanceNotFoundException
-如果一个的
names
不对应于任何注册MBean。
SecurityException
-如果一的MBean,客户端,或授权的主体如果没有权限添加一个监听器。
IOException
如果发生一般通信异常。
void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject) throws InstanceNotFoundException, ListenerNotFoundException, IOException
处理removeNotificationListener(ObjectName, NotificationListener)
和removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)
方法。
这种方法从一个给定的MBean服务器中删除一个或多NotificationListener
s MBean。
的NotificationListeners
由被addNotificationListeners(ObjectName[], MarshalledObject[], Subject[])
方法返回的ID识别。
name
-
ObjectName
标识MBean发出通知。
listenerIDs
-对应于听众删除ID列表。
delegationSubject
-
Subject
包含代表团负责人或
null
如果认证主要是用来代替。
InstanceNotFoundException
-如果给定的
name
不对应于任何注册MBean。
ListenerNotFoundException
-如果一个听众不在服务器端发现。这个例外如果MBean丢弃一些原因以外的电话
MBeanServer.removeNotificationListener
听众发生。
SecurityException
如果客户端,或授权的主体如果没有权限删除的听众。
IOException
如果发生一般通信异常。
IllegalArgumentException
-如果
ObjectName
或
listenerIds
是无效的或者
listenerIds
包含一个null元素。
NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout) throws IOException
从连接器服务器检索通知。此方法可以阻止直到至少有一个通知或直到指定的超时时间到达。该方法还可以在任何时间返回零通知。
一个通知可以如果序列号不小于clientSequenceNumber
和这个客户已经注册了至少一个听众对MBean产生的通知包含在结果,与过滤器接受通知。每一位听众,在通知感兴趣的是由一个整数ID返回的addNotificationListeners(ObjectName[], MarshalledObject[], Subject[])
鉴定。
clientSequenceNumber
-客户感兴趣的第一个序列号。如果是否定的,它被解释为意义的序列号,下一个通知将有。
maxNotifications
-不同通知的最大数量返回。在返回的
NotificationResult
的
TargetedNotification
阵列可以有更多的元素比这如果同样的通知出现不止一次。如果这个参数是负的,则该行为是未指定的。
timeout
的最大毫秒时间等待通知的到来。这可以是0,表明该方法不应该等待,如果没有通知,但应该立即返回。它可以
Long.MAX_VALUE
表明没有超时。如果这个参数是负的,则该行为是未指定的。
NotificationResult
。
IOException
如果发生一般通信异常。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.