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