|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.management.remote.rmi.RMIConnector
public class RMIConnector
リモート RMI コネクタへの接続です。通常、こうした接続は、JMXConnectorFactory
で作成されます。しかし、JNDI を使用しないで取得される RMIServer
スタブなどにより、このクラスを直接使用する特殊なアプリケーションもあります。
フィールドの概要 |
---|
インタフェース javax.management.remote.JMXConnector から継承されたフィールド |
---|
CREDENTIALS |
コンストラクタの概要 | |
---|---|
RMIConnector(JMXServiceURL url,
Map<String,?> environment)
指定されたアドレスの RMI コネクタサーバーに接続する RMIConnector を構築します。 |
|
RMIConnector(RMIServer rmiServer,
Map<String,?> environment)
指定された RMI スタブを使って RMIConnector を構築します。 |
メソッドの概要 | |
---|---|
void |
addConnectionNotificationListener(NotificationListener listener,
NotificationFilter filter,
Object handback)
接続の状態の変化を通知されるリスナーを追加します。 |
void |
close()
クライアントとサーバーの接続を終了します。 |
void |
connect()
コネクタサーバーとの接続を確立します。 |
void |
connect(Map<String,?> environment)
コネクタサーバーとの接続を確立します。 |
JMXServiceURL |
getAddress()
このコネクタのアドレスです。 |
String |
getConnectionId()
コネクタサーバーから、この接続の ID を取得します。 |
MBeanServerConnection |
getMBeanServerConnection()
リモート MBean サーバーを表す MBeanServerConnection オブジェクトを返します。 |
MBeanServerConnection |
getMBeanServerConnection(Subject delegationSubject)
提供された委譲対象の代わりにオペレーションを実行する、リモート MBean サーバーを表す MBeanServerConnection オブジェクトを返します。 |
void |
removeConnectionNotificationListener(NotificationListener listener)
状態の変更を通知されるリスナーをリストから削除します。 |
void |
removeConnectionNotificationListener(NotificationListener listener,
NotificationFilter filter,
Object handback)
状態の変更を通知されるリスナーをリストから削除します。 |
String |
toString()
このオブジェクトの文字列表現を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
public RMIConnector(JMXServiceURL url, Map<String,?> environment)
指定されたアドレスの RMI コネクタサーバーに接続する RMIConnector
を構築します。
アドレスは、コネクタサーバーを直接参照できます。 次のいずれかの構文を使用します。
service:jmx:rmi://[host[:port]]/stub/encoded-stub service:jmx:iiop://[host[:port]]/ior/encoded-IOR
角括弧 []
はアドレスの一部ではなく、ホストとポートがオプションであることを示します。
アドレスを使って、JNDI から RMI スタブを検索する場所を示すこともできます。 次のいずれかの構文を使用します。
service:jmx:rmi://[host[:port]]/jndi/jndi-name service:jmx:iiop://[host[:port]]/jndi/jndi-name
実装も追加アドレス構文を認識できます。 次に例を示します。
service:jmx:iiop://[host[:port]]/stub/encoded-stub
url
- RMI コネクタサーバーのアドレスenvironment
- 接続の作成方法を指定する
追加属性。JNDI ベースのアドレスの場合、
これらの属性に、
InitialContext
によって認識される JNDI 属性が含まれる。このパラメータが null の場合、
空のマップを指定した場合と同じことになる
IllegalArgumentException
- url
が
null の場合public RMIConnector(RMIServer rmiServer, Map<String,?> environment)
指定された RMI スタブを使って RMIConnector
を構築します。
rmiServer
- RMI コネクタサーバーを表す RMI スタブenvironment
- 接続の作成方法を指定する
追加属性。このパラメータが null の場合、
空のマップを指定した場合と同じことになる
IllegalArgumentException
- rmiServer
が
null の場合メソッドの詳細 |
---|
public String toString()
このオブジェクトの文字列表現を返します。通常、toString
メソッドはこのオブジェクトを「テキストで表現する」文字列を返します。この結果は、人間が読める簡潔で有益な情報であるべきです。
Object
内の toString
public JMXServiceURL getAddress()
このコネクタのアドレスです。
JMXAddressable
内の getAddress
public void connect() throws IOException
JMXConnector
の記述:コネクタサーバーとの接続を確立します。このメソッドは、connect(null)
と同等です。
JMXConnector
内の connect
IOException
- 通信障害により
接続を確立できなかった場合public void connect(Map<String,?> environment) throws IOException
JMXConnector
の記述:コネクタサーバーとの接続を確立します。
このオブジェクト上で、すでに connect
が呼び出されている場合、もう 1 回呼び出しても何も起こりません。一方、connect
のあとで JMXConnector.close()
が呼び出されている場合、再度 connect
を呼び出すと IOException
がスローされます。
このオブジェクト上で connect
が 1 回も呼び出されていない場合、または、呼び出しに対して例外が生成された場合、connect
を呼び出すとコネクタサーバーとの接続が試行されます。
JMXConnector
内の connect
environment
- 接続のプロパティー。このマップ内のプロパティーは、JMXConnector
の
作成時に指定されたマップ内の
プロパティーをオーバーライドする (存在する場合)。このパラメータが null の場合、
空のマップを指定した場合と同じことになる
IOException
- 通信障害により
接続を確立できなかった場合public String getConnectionId() throws IOException
JMXConnector
の記述:コネクタサーバーから、この接続の ID を取得します。コネクタサーバー内のすべての接続は一意の ID を持ち、この ID は接続の寿命が尽きるまで変わりません。
JMXConnector
内の getConnectionId
JMXConnectionNotification
に格納する ID と同じ。package description
は接続 ID の
規約の説明
IOException
- 接続の終了、中断などが原因で
接続 ID を取得できない場合public MBeanServerConnection getMBeanServerConnection() throws IOException
JMXConnector
の記述:リモート MBean サーバーを表す MBeanServerConnection
オブジェクトを返します。通常、JMXConnector
に対してこのメソッドを 2 回呼び出した場合、各呼び出しで同じ MBeanServerConnection
オブジェクトが返されます。 ただし、これは必須条件ではありません。
返された MBeanServerConnection
内の各メソッドに対してこのメソッドを呼び出すと、リモート MBean サーバー内の対応するメソッドが呼び出されます。MBean サーバーメソッドによって返される値が、クライアントに返される値となります。MBean サーバーメソッドが Exception
をスローした場合、クライアントには同じ Exception
が返されます。MBean サーバーメソッド自体、またはその呼び出しの試行で Error
が発生した場合、クライアントには、発生した Error
をラップする JMXServerErrorException
が返されます。
このメソッドの呼び出しは、getMBeanServerConnection(null)
の呼び出しと同等です。 委譲対象が指定されておらず、MBeanServerConnection
上で呼び出されたすべてのオペレーションは認証対象 (存在する場合) を使用する必要があります。
JMXConnector
内の getMBeanServerConnection
MBeanServerConnection
インタフェースを
実装するオブジェクト
IOException
- 有効な
MBeanServerConnection
を作成できない場合。
たとえば、
connect
メソッドによるリモート MBean サーバーとの接続がまだ確立されていない場合、MBean サーバーとの接続がすでに終了している場合、接続が中断された場合などpublic MBeanServerConnection getMBeanServerConnection(Subject delegationSubject) throws IOException
JMXConnector
の記述:提供された委譲対象の代わりにオペレーションを実行する、リモート MBean サーバーを表す MBeanServerConnection
オブジェクトを返します。通常、JMXConnector
および Subject
に対してこのメソッドを 2 回呼び出した場合、各呼び出しで同じ MBeanServerConnection
オブジェクトが返されます。 ただし、これは必須条件ではありません。
返された MBeanServerConnection
内の各メソッドに対してこのメソッドを呼び出すと、認証対象ではなく委譲対象に代わって、リモート MBean サーバー内の対応するメソッドが呼び出されます。MBean サーバーメソッドによって返される値が、クライアントに返される値となります。MBean サーバーメソッドが Exception
をスローした場合、クライアントには同じ Exception
が返されます。MBean サーバーメソッド自体、またはその呼び出しの試行で Error
が発生した場合、クライアントには、発生した Error
をラップする JMXServerErrorException
が返されます。
JMXConnector
内の getMBeanServerConnection
delegationSubject
- Subject
。
これの代わりに要求が実行される。null の場合、
認証済み Subject の代わりに
要求が実行される (存在する場合)
MBeanServerConnection
インタフェースを
実装するオブジェクト
IOException
- 有効な MBeanServerConnection
を
作成できない場合。たとえば、
connect
メソッドによるリモート MBean サーバーとの接続がまだ確立されていない場合、MBean サーバーとの接続がすでに終了している場合、接続が中断された場合などpublic void addConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
JMXConnector
の記述:接続の状態の変化を通知されるリスナーを追加します。このリスナーは、JMXConnectionNotification
型の通知を受信します。実装により、これ以外の型の通知が送信される場合もあります。
このメソッドに追加できるリスナーの数に制限はありません。フィルタとハンドバックに同一の値または異なった値を指定して、同一のリスナーを繰り返し追加することも可能です。複製エントリも特別扱いされません。たとえば、リスナーをフィルタなしで 2 回登録した場合、各通知で、このリスナーの handleNotification
メソッドが 2 回呼び出されます。
JMXConnector
内の addConnectionNotificationListener
listener
- 接続状態通知を受け取る
リスナーfilter
- リスナーに配信される通知を選択するフィルタ。
すべての通知を
配信する場合は nullhandback
- 各通知とともにリスナーに
渡されるオブジェクト。null も可JMXConnector.removeConnectionNotificationListener(javax.management.NotificationListener)
,
NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
public void removeConnectionNotificationListener(NotificationListener listener) throws ListenerNotFoundException
JMXConnector
の記述:状態の変更を通知されるリスナーをリストから削除します。削除対象として指定できるのは、以前に追加されたリスナーのみです。条件に該当するリスナーが複数存在する場合、すべて削除されます。
JMXConnector
内の removeConnectionNotificationListener
listener
- 接続状態通知を受け取る
リスナー
ListenerNotFoundException
- リスナーが
この JMXConnector
に登録されていない場合JMXConnector.removeConnectionNotificationListener(NotificationListener,
NotificationFilter, Object)
,
JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
,
NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
public void removeConnectionNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
JMXConnector
の記述:状態の変更を通知されるリスナーをリストから削除します。削除対象として指定できるのは、以前に同じ 3 つのパラメータで追加されたリスナーのみです。条件に該当するリスナーが複数存在する場合も、削除されるのは 1 つだけです。
JMXConnector
内の removeConnectionNotificationListener
listener
- 接続状態通知を受け取るリスナーfilter
- リスナーに配信される
通知を選択するフィルタ。null も可handback
- 各通知とともにリスナーに
渡されるオブジェクト。null も可
ListenerNotFoundException
- リスナーが
この JMXConnector
に登録されていない場合、
または指定されたフィルタおよびハンドバックで登録されていない場合JMXConnector.removeConnectionNotificationListener(NotificationListener)
,
JMXConnector.addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
,
NotificationEmitter.removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
public void close() throws IOException
JMXConnector
の記述:クライアントとサーバーの接続を終了します。現行の要求または新しい要求が、JMXConnector.getMBeanServerConnection()
から返される MBeanServerConnection を使用する場合、IOException
がスローされます。
このオブジェクト上で、すでに close
が呼び出されている場合、もう 1 回呼び出しても何も起こりません。close
が 1 回も呼び出されていない場合、または、呼び出しに対して例外が生成された場合は、接続の終了が試行されます。この試行に成功した場合、close
は通常どおり終了します。 失敗した場合は例外が生成されることがあります。
接続の終了は、時間のかかるオペレーションです。たとえばサーバーがクラッシュした場合、終了オペレーションはネットワークプロトコルのタイムアウトまで中断される可能性があります。終了オペレーションの途中で待たされたくない場合は、別スレッドで実行してください。
Closeable
内の close
JMXConnector
内の close
IOException
- 接続を正常に
終了できない場合。この例外がスローされた場合、
接続のサーバー側が正常に終了したかどうかは不明
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。