|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.management.remote
类 JMXConnectorServer
java.lang.Object javax.management.NotificationBroadcasterSupport javax.management.remote.JMXConnectorServer
- 直接已知子类:
- RMIConnectorServer
-
public abstract class JMXConnectorServer
- extends NotificationBroadcasterSupport
- implements JMXConnectorServerMBean, MBeanRegistration
每个连接器服务器的超类。连接器服务器连接到 MBean 服务器。它侦听客户端连接请求并为每个请求创建连接。
连接器服务器或者通过在该 MBean 服务器上注册该连接器服务器,或者通过将 MBean 服务器传给其构造方法来与 MBean 服务器关联。
连接器服务器在创建时为非活动的。只有在调用了 start
方法后,它才开始侦听客户端连接。当调用了 stop
方法,或者将连接器服务器从其 MBean 服务器注销后,连接器服务器停止侦听客户端连接。
停止连接器服务器并不会将它从其 MBean 服务器注销。连接器服务器一旦停止就无法重新启动。
客户端连接每次建立或断开都将发出一个类 JMXConnectionNotification
的通知。
- 从以下版本开始:
- 1.5
字段摘要 | |
---|---|
static String |
AUTHENTICATOR 为连接器服务器指定经验证的属性名称。 |
构造方法摘要 | |
---|---|
JMXConnectorServer() 构造一个将注册为连接到 MBean 服务器的 MBean 的连接器服务器。 |
|
JMXConnectorServer(MBeanServer mbeanServer) 构造一个连接到给定 MBean 服务器的连接器服务器。 |
方法摘要 | |
---|---|
protected void |
connectionClosed(String connectionId, String message, Object userData) 正常关闭客户端连接时由子类调用。 |
protected void |
connectionFailed(String connectionId, String message, Object userData) 客户端连接失败时由子类调用。 |
protected void |
connectionOpened(String connectionId, String message, Object userData) 打开新的客户端连接时由子类调用。 |
String[] |
getConnectionIds() 当前打开的到此连接器服务器的连接 ID 列表。 |
MBeanServer |
getMBeanServer() 返回该连接器服务器连接到的 MBean 服务器。 |
MBeanNotificationInfo[] |
getNotificationInfo() 返回一个指示由该 MBean 发送的通知的数组。 |
void |
postDeregister() 允许 MBean 在已从 MBean 服务器注销之后执行所需要的任何操作。 |
void |
postRegister(Boolean registrationDone) 允许 MBean 在被注册到 MBean 服务器或注销失败后执行任何所需要的操作。 |
void |
preDeregister() 当此连接器服务器从 MBean 服务器上注销时,由该 MBean 服务器调用此方法。 |
ObjectName |
preRegister(MBeanServer mbs, ObjectName name) 当此连接器服务器在 MBean 服务器上注册时,由该 MBean 服务器调用此方法。 |
void |
setMBeanServerForwarder(MBeanServerForwarder mbsf) 添加一个截取对 MBean 服务器请求的对象,该请求是通过此连接器服务器到达的。 |
JMXConnector |
toJMXConnector(Map<String,?> env) 返回此连接器服务器的客户端 stub。 |
从类 javax.management.NotificationBroadcasterSupport 继承的方法 |
---|
addNotificationListener, handleNotification, removeNotificationListener, removeNotificationListener, sendNotification |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
从接口 javax.management.remote.JMXConnectorServerMBean 继承的方法 |
---|
getAddress, getAttributes, isActive, start, stop |
字段详细信息 |
---|
AUTHENTICATOR
public static final String AUTHENTICATOR
-
为连接器服务器指定经验证的属性名称。此属性关联的值(如果有)必须是一个实现
JMXAuthenticator
接口的对象。- 另请参见:
- 常量字段值
构造方法详细信息 |
---|
JMXConnectorServer
public JMXConnectorServer()
-
构造一个将注册为连接到 MBean 服务器的 MBean 的连接器服务器。此构造方法通常由
createMBean
方法之一在创建(在 MBean 服务器内)实现远程可用的连接器服务器时调用。
JMXConnectorServer
public JMXConnectorServer(MBeanServer mbeanServer)
-
构造一个连接到给定 MBean 服务器的连接器服务器。使用这样的方法创建的连接器服务器可注册到一个不同的 MBean 服务器上。
- 参数:
-
mbeanServer
- 该连接器服务器连接到的 MBean 服务器。如果该连接器服务器将通过注册的方式连接到 MBean 服务器,则为 Null。
方法详细信息 |
---|
getMBeanServer
public MBeanServer getMBeanServer()
-
返回该连接器服务器连接到的 MBean 服务器。
-
-
- 返回:
- 该连接器服务器连接到的 MBean 服务器,或者如果尚未连接到 MBean 服务器,则返回 null。
setMBeanServerForwarder
public void setMBeanServerForwarder(MBeanServerForwarder mbsf)
-
从接口
JMXConnectorServerMBean
复制的描述 -
添加一个截取对 MBean 服务器请求的对象,该请求是通过此连接器服务器到达的。此对象将作为任何由此连接器服务器创建的新连接的
MBeanServer
提供。现有连接不受影响。如果此连接器服务器已与一个
MBeanServer
对象关联,则将该对象提供给mbsf.setMBeanServer
。如果这样做生成异常,则该方法抛出相同的异常,没有任何其他作用。如果此连接器尚未与一个
MBeanServer
对象关联,或者如果刚才提到的mbsf.setMBeanServer
调用成功,则mbsf
成为该连接器服务器的MBeanServer
。 -
- 指定者:
-
接口
JMXConnectorServerMBean
中的setMBeanServerForwarder
-
- 参数:
-
mbsf
- 新的MBeanServerForwarder
。
getConnectionIds
public String[] getConnectionIds()
-
从接口
JMXConnectorServerMBean
复制的描述 -
当前打开的到此连接器服务器的连接 ID 列表。
-
- 指定者:
-
接口
JMXConnectorServerMBean
中的getConnectionIds
-
- 返回:
- 包含 ID 列表的新字符串数组。如果当前没有打开的连接,则此数组将为空。
toJMXConnector
public JMXConnector toJMXConnector(Map<String,?> env) throws IOException
-
返回此连接器服务器的客户端 stub。客户端 stub 为一个可序列化的对象,其
connect
方法可用于建立一个到此连接器服务器的新连接。给定的连接器不必支持生成客户端 stub。但是,由 JMX Remote API 指定的连接器必须支持生成客户端 stub(JMXMP Connector 和 RMI Connector)。
此方法的默认实现使用
JMXConnectorServerMBean.getAddress()
和JMXConnectorFactory
生成 stub,其代码等效于:JMXServiceURL addr =
getAddress()
; returnJMXConnectorFactory.newJMXConnector(addr, env)
;此代码不适用的连接器服务器必须重写此方法,这样或者实现适当的逻辑,或者抛出
UnsupportedOperationException
。 -
- 指定者:
-
接口
JMXConnectorServerMBean
中的toJMXConnector
-
- 参数:
-
env
- 客户端连接参数,与提供给JMXConnector.connect(Map)
的参数具有相同的类型。可以为 null,它等效于一个空映射。 - 返回:
- 可用于建立到此连接器服务器的新连接的客户端 stub。
- 抛出:
-
UnsupportedOperationException
- 如果此连接器服务器不支持生成客户端 stub。 -
IllegalStateException
- 如果 JMXConnectorServer 未启动(请参阅JMXConnectorServerMBean.isActive()
)。 -
IOException
- 如果存在通信问题而导致无法创建 stub。
getNotificationInfo
public MBeanNotificationInfo[] getNotificationInfo()
-
返回一个指示由该 MBean 发送的通知的数组。
JMXConnectorServer
中的实现返回带一个元素的数组,这指示它可以发出在此类中定义的类型的类JMXConnectionNotification
的通知。能够发出其他通知的子类应返回一个包含该元素和对其他通知的描述的数组。 -
- 指定者:
-
接口
NotificationBroadcaster
中的getNotificationInfo
- 覆盖:
-
类
NotificationBroadcasterSupport
中的getNotificationInfo
-
- 返回:
- 可能的通知的数组。
connectionOpened
protected void connectionOpened(String connectionId, String message, Object userData)
-
打开新的客户端连接时由子类调用。将由
getConnectionIds()
返回的connectionId
添加到列表中,然后发出一个类型为JMXConnectionNotification.OPENED
的JMXConnectionNotification
。 -
-
- 参数:
-
connectionId
- 新连接的 ID。它必须与任何由此连接器服务器先前打开的连接的 ID 不一样。 -
message
- 发出的JMXConnectionNotification
的消息。可以为 null。请参阅Notification.getMessage()
。 -
userData
- 发出的JMXConnectionNotification
的userData
。可以为 null。请参阅Notification.getUserData()
。 - 抛出:
-
NullPointerException
- 如果connectionId
为 null。