public interface JMXConnector extends Closeable
一个JMX API接口的客户端。此类型的对象可以用于建立连接到连接器服务器上。
新创建的对象类型是无关的。其connect
方法使用之前必须调用。然而,由JMXConnectorFactory.connect
对象已连接。
Modifier and Type | Field and Description |
---|---|
static String |
CREDENTIALS
属性的名称,该属性指定在连接期间向连接器服务器发送的凭据的属性。
|
Modifier and Type | Method and Description |
---|---|
void |
addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
添加一个侦听器以获知连接状态的更改。
|
void |
close()
关闭客户端连接到它的服务器。
|
void |
connect()
建立连接到连接器服务器。
|
void |
connect(Map<String,?> env)
建立连接到连接器服务器。
|
String |
getConnectionId()
从连接器服务器获取此连接的身份证。
|
MBeanServerConnection |
getMBeanServerConnection()
返回一个
MBeanServerConnection 对象代表一个远程管理服务器。
|
MBeanServerConnection |
getMBeanServerConnection(Subject delegationSubject)
返回一个
MBeanServerConnection 对象代表一个MBean服务器上远程操作对供给主体进行授权代表。
|
void |
removeConnectionNotificationListener(NotificationListener listener)
从列表中移除一个侦听器,以获知状态的更改。
|
void |
removeConnectionNotificationListener(NotificationListener l, NotificationFilter f, Object handback)
从列表中移除一个侦听器,以获知状态的更改。
|
static final String CREDENTIALS
属性的名称,该属性指定在连接期间向连接器服务器发送的凭据的属性。与此相关的属性值,如果有的话,是一个可序列化的对象对服务器的JMXAuthenticator
适当类型。
void connect() throws IOException
建立连接到连接器服务器。这种方法相当于connect(null)
。
IOException
-如果连接不能因为沟通问题。
SecurityException
如果不能连接安全的原因。
void connect(Map<String,?> env) throws IOException
建立连接到连接器服务器。
如果connect
已经成功调用这个对象,调用了没有效果。如果,然而,close()
被称为connect
后,新connect
将抛出一个IOException
。
否则,要么connect
从未被称为这个对象,或被称为但产生异常。然后调用connect
将试图建立一个连接服务器的连接。
env
-连接的性能。性在这Map覆盖性能中图
JMXConnector
创建时指定,如果任何。这个参数可以是空的,这相当于一个空的Map。
IOException
-如果连接不能因为沟通问题。
SecurityException
如果不能连接安全的原因。
MBeanServerConnection getMBeanServerConnection() throws IOException
返回一个MBeanServerConnection
对象代表一个远程管理服务器。对于一个给定的JMXConnector
,两成功调用这个方法通常会返回相同的MBeanServerConnection
对象,尽管这不是必须的。
每个方法的返回MBeanServerConnection
,调用方法使相应的方法被称为远程管理服务器。该值由MBean服务器的方法返回的值返回给客户端。如果MBean服务器的方法产生一个异常
,相同的异常
被客户看见。如果MBean服务器的方法,或尝试调用它,产生一个Error
,的Error
包在一个JMXServerErrorException
,这被客户看见。
调用此方法相当于调用getMBeanServerConnection(null)
意味着没有代表团主体是特定的,所有的行动呼吁MBeanServerConnection
必须使用经过认证的主体,如果任何。
MBeanServerConnection
转发到远程管理服务器对象。
IOException
-如果一个有效的
MBeanServerConnection
不能创造,例如因为远程MBean服务器的连接尚未建立(与
connect
法),或已关闭,或已破碎。
MBeanServerConnection getMBeanServerConnection(Subject delegationSubject) throws IOException
返回一个MBeanServerConnection
对象代表一个MBean服务器上远程操作对供给主体进行授权代表。对于一个给定的JMXConnector
和Subject
,两成功调用这个方法通常会返回相同的MBeanServerConnection
对象,尽管这不是必须的。
每个方法的返回MBeanServerConnection
,调用方法使相应的方法是在给定的主题而不是认证代表团代表MBean服务器调用远程对象。该值由MBean服务器的方法返回的值返回给客户端。如果MBean服务器的方法产生一个异常
,相同的异常
被客户看见。如果MBean服务器的方法,或尝试调用它,产生一个Error
,的Error
包在一个JMXServerErrorException
,这被客户看见。
delegationSubject
-代表要求将进行
Subject
。可以为空,在这种情况下,请求将被执行的身份验证的主题,如果有。
MBeanServerConnection
转发到远程管理服务器上的一个给定的对象主体代表团。
IOException
-如果一个有效的
MBeanServerConnection
不能创造,例如因为远程MBean服务器的连接尚未建立(与
connect
法),或已关闭,或已破碎。
void close() throws IOException
关闭客户端连接到它的服务器。任何正在进行的或新的要求使用mbeanserverconnection返回getMBeanServerConnection()
将得到一个IOException
。
如果close
已经成功调用这个对象,调用了没有效果。如果close
从来没有叫,或如果它被称为可产生异常,将尝试关闭连接。这种尝试能够成功,在这种情况下,close
将回归正常,也可以产生一个异常。
关闭一个连接是一个潜在的缓慢操作。例如,如果服务器已崩溃,关闭操作可能需要等待网络协议超时。不想阻塞关闭操作的调用方应在另一个线程中这样做。
close
接口
AutoCloseable
close
接口
Closeable
IOException
-如果连接无法关闭干净。如果抛出此异常,则不知道连接的服务器端是否已完全关闭。
void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
添加一个侦听器以获知连接状态的更改。听者接收型JMXConnectionNotification
通知。一个实现也可以发送其他类型的通知。
可以添加任何数量的侦听器。相同的听众可以增加超过一次的滤波器和盖印相同或不同的价值观。没有一个重复的条目的特殊处理。例如,如果一个监听器注册两次没有过滤器,然后handleNotification
方法将被调用两次每个通知。
listener
-监听器接收连接状态通知。
filter
-过滤器选择的通知必须交给听众,或null如果所有通知都将交付。
handback
物体给听者随着每个通知。可以为空。
NullPointerException
-如果
listener
是空的。
removeConnectionNotificationListener(javax.management.NotificationListener)
,
NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
从列表中移除一个侦听器,以获知状态的更改。听众必须先前已被添加。如果有一个以上的匹配侦听器,所有都被删除。
listener
-监听器接收连接状态通知。
NullPointerException
-如果
listener
是空的。
ListenerNotFoundException
如果听者没有注册,这
JMXConnector
。
removeConnectionNotificationListener(NotificationListener, NotificationFilter, Object)
,
addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
,
NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
void removeConnectionNotificationListener(NotificationListener l, NotificationFilter f, Object handback) throws ListenerNotFoundException
从列表中移除一个侦听器,以获知状态的更改。侦听器必须以前已添加相同的三个参数。如果有一个以上的匹配侦听器,只有一个被删除。
l
-监听器接收连接状态通知。
f
-过滤器选择的通知送到听众。可以为空。
handback
物体给听者随着每个通知。可以为空。
ListenerNotFoundException
如果听者是不是与此
JMXConnector
注册,或不与给定的滤波器和盖印注册。
removeConnectionNotificationListener(NotificationListener)
,
addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
,
NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
String getConnectionId() throws IOException
从连接器服务器获取此连接的身份证。对于一个给定的连接器服务器,每一个连接都将有一个唯一的标识,在连接的生命期内不会改变。
JMXConnectionNotification
s相同。的
package description
描述连接IDS的公约。
IOException
-如果连接ID不能获得,例如由于连接被关闭或断开。
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.