public interface JMXConnectorServerMBean
コネクタ・サーバーのMBeanインタフェースです。JMX APIコネクタ・サーバーはMBeanサーバーに接続され、リモート・クライアントが利用するこのMBeanサーバーとの接続を確立します。
新しく作成されたコネクタ・サーバーは非アクティブであり、まだ接続を待機していません。このコネクタ・サーバーは、start
メソッドが呼び出されてから、接続の待機を開始します。
修飾子と型 | メソッドと説明 |
---|---|
JMXServiceURL |
getAddress()
このコネクタ・サーバーのアドレス。
|
Map<String,?> |
getAttributes()
このコネクタ・サーバーの属性。
|
String[] |
getConnectionIds()
このコネクタ・サーバーへの現在開いている接続のIDのリストです。
|
boolean |
isActive()
コネクタ・サーバーがアクティブかどうかを判定します。
|
void |
setMBeanServerForwarder(MBeanServerForwarder mbsf)
このコネクタ・サーバー経由で着信したMBeanサーバーへの要求を遮断するオブジェクトを挿入します。
|
void |
start()
コネクタ・サーバーをアクティブにして、クライアント接続の待機を開始します。
|
void |
stop()
コネクタ・サーバーを終了して、クライアント接続の待機を停止します。
|
JMXConnector |
toJMXConnector(Map<String,?> env)
このコネクタ・サーバーのクライアント・スタブを返します。
|
void start() throws IOException
コネクタ・サーバーをアクティブにして、クライアント接続の待機を開始します。コネクタ・サーバーがすでにアクティブな場合は、このメソッドを呼び出しても何も起こりません。コネクタ・サーバーが停止している状態でこのメソッドを呼び出すと、IOException
が生成されます。
IOException
- 待機を開始できない場合、またはコネクタ・サーバーが停止している場合。IllegalStateException
- コネクタ・サーバーがMBeanサーバーに接続されていない場合。void stop() throws IOException
コネクタ・サーバーを終了して、クライアント接続の待機を停止します。このメソッドを呼び出すと、このサーバーで作成されたすべてのクライアント接続が終了します。このメソッドが正常に終了した場合も、例外を生成して終了した場合も、コネクタ・サーバーは新しいクライアント接続を作成しなくなります。
いったん停止したコネクタ・サーバーを再度起動することはできません。
コネクタ・サーバーがすでに停止している場合は、このメソッドを呼び出しても何も起こりません。コネクタ・サーバーがまだ起動していない状態でこのメソッドを呼び出すと、コネクタ・サーバー・オブジェクトが永続的に無効化されます。
クライアント接続の終了時に生成された例外は、このメソッドからはスローされません。このMBeanからは、JMXConnectionNotification.FAILED
型のJMXConnectionNotification
と、終了できなかった接続の接続IDが発行されます。
コネクタ・サーバーの終了は、時間のかかるオペレーションです。たとえば有効な接続を持っているクライアント・マシンがクラッシュした場合、終了オペレーションはネットワーク・プロトコルのタイム・アウトまで中断される可能性があります。終了オペレーションの途中で待たされたくない場合は、別スレッドで実行してください。
IOException
- サーバーを正常に終了できない場合。この例外がスローされたとき、サーバーはすでにすべてのクライアント接続の終了を試行済み。サーバーが終了を試行したとき例外が生成されたものを除いて、すべてのクライアント接続が終了している。boolean isActive()
コネクタ・サーバーがアクティブかどうかを判定します。start
メソッドが正常に終了すると、コネクタ・サーバーはアクティブになります。その後、stop
メソッドが呼び出されるか、障害が発生するまで、コネクタ・サーバーはアクティブな状態を維持します。
void setMBeanServerForwarder(MBeanServerForwarder mbsf)
このコネクタ・サーバー経由で着信したMBeanサーバーへの要求を遮断するオブジェクトを挿入します。このオブジェクトは、このコネクタ・サーバーによって作成された新しい接続のMBeanServer
として指定されます。既存の接続に影響はありません。
このメソッドは、異なるMBeanServerForwarder
オブジェクトを使って繰返し呼び出すことができます。結果はフォワーダのチェーンになります。最後に追加されたフォワーダが、チェーンの先頭になります。詳細は次のとおりです。
このコネクタ・サーバーがすでにMBeanServer
オブジェクトに関連付けられている場合は、mbsf.setMBeanServer
にこのオブジェクトが渡されます。この処理で例外が生成された場合、このメソッドはその例外をスローします。
このコネクタがまだMBeanServer
オブジェクトに関連付けられていない場合、またはmbsf.setMBeanServer
呼出しが成功した場合、mbsf
がこのコネクタ・サーバーのMBeanServer
になります。
mbsf
- 新しいMBeanServerForwarder
。IllegalArgumentException
- mbsf.setMBeanServer
の呼出しがIllegalArgumentException
を生成して失敗した場合。mbsf
がnullの場合も含まれる。String[] getConnectionIds()
このコネクタ・サーバーへの現在開いている接続のIDのリストです。
JMXServiceURL getAddress()
このコネクタ・サーバーのアドレス。
コネクタ・サーバーの作成時に指定されたアドレスが完全であるとは限らないため、返されるアドレスは元のJMXServiceURL
とは一致しない可能性があります。たとえば、ポート番号はコネクタ・サーバーの起動時に動的に割り当てられることがあります。このため、返されるアドレスはJMXConnectorServer
の実際のJMXServiceURL
です。これは、クライアントがJMXConnectorFactory.connect(JMXServiceURL)
に指定するアドレスです。
JMXConnectorServer
がまだactive
でない場合、返されるアドレスはnull
になります。
Map<String,?> getAttributes()
このコネクタ・サーバーの属性。
JMXConnector toJMXConnector(Map<String,?> env) throws IOException
このコネクタ・サーバーのクライアント・スタブを返します。クライアント・スタブは直列化可能なオブジェクトです。このオブジェクトのconnect
メソッドを使用して、このコネクタ・サーバーとの新しい接続を1つ確立できます。
指定されたコネクタが、クライアント・スタブの生成機能をサポートしない場合もあります。ただし、JMXリモートAPIによって指定されたコネクタ(JMXMPコネクタとRMIコネクタ)は、この機能をサポートします。
env
- JMXConnector.connect(Map)
に提供可能な同じ種類のクライアント接続パラメータ。nullも可、その場合は空マップと同等。UnsupportedOperationException
- このコネクタ・サーバーがクライアント・スタブの生成機能をサポートしない場合。IllegalStateException
- JMXConnectorServerが起動していない場合(isActive()
を参照)。IOException
- 通信障害により、スタブを作成できない場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.