モジュール java.management
パッケージ javax.management.remote

インタフェースJMXConnectorServerMBean

  • 既知のすべての実装クラス:
    JMXConnectorServer, RMIConnectorServer


    public interface JMXConnectorServerMBean

    コネクタ・サーバーのMBeanインタフェースです。 JMX APIコネクタ・サーバーはMBeanサーバーに接続され、リモート・クライアントが利用するこのMBeanサーバーとの接続を確立します。

    新しく作成されたコネクタ・サーバーは非アクティブであり、まだ接続を待機していません。 このコネクタ・サーバーは、startメソッドが呼び出されてから、接続の待機を開始します。

    導入されたバージョン:
    1.5
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 
      修飾子と型 メソッド 説明
      JMXServiceURL getAddress​()
      このコネクタ・サーバーのアドレス。
      Map<String,?> getAttributes​()
      このコネクタ・サーバーの属性。
      String[] getConnectionIds​()
      このコネクタ・サーバーへの現在開いている接続のIDのリストです。
      boolean isActive​()
      コネクタ・サーバーがアクティブかどうかを判定します。
      void setMBeanServerForwarder​(MBeanServerForwarder mbsf)
      このコネクタ・サーバー経由で着信したMBeanサーバーへの要求を遮断するオブジェクトを挿入します。
      void start​()
      コネクタ・サーバーをアクティブにして、クライアント接続の待機を開始します。
      void stop​()
      コネクタ・サーバーを終了して、クライアント接続の待機を停止します。
      JMXConnector toJMXConnector​(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 - 通信障害により、スタブを作成できない場合。