JavaTM 2 Platform
Standard Ed. 5.0

javax.management.remote.rmi
クラス RMIConnectionImpl

java.lang.Object
  上位を拡張 javax.management.remote.rmi.RMIConnectionImpl
すべての実装されたインタフェース:
Remote, Unreferenced, RMIConnection

public class RMIConnectionImpl
extends Object
implements RMIConnection, Unreferenced

RMIConnection インタフェースの実装です。通常、ユーザコードはこのクラスを参照しません。

導入されたバージョン:
1.5

コンストラクタの概要
RMIConnectionImpl(RMIServerImpl rmiServer, String connectionId, ClassLoader defaultClassLoader, Subject subject, Map<String,?> env)
          新しい RMIConnection を構築します。
 
メソッドの概要
 void addNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject)
          MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) メソッドを処理します。
 Integer[] addNotificationListeners(ObjectName[] names, MarshalledObject[] filters, Subject[] delegationSubjects)
          MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) メソッドを処理します。
 void close()
          この接続を終了します。
 ObjectInstance createMBean(String className, ObjectName name, MarshalledObject params, String[] signature, Subject delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) メソッドを処理します。
 ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, MarshalledObject params, String[] signature, Subject delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) メソッドを処理します。
 ObjectInstance createMBean(String className, ObjectName name, ObjectName loaderName, Subject delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName, ObjectName) メソッドを処理します。
 ObjectInstance createMBean(String className, ObjectName name, Subject delegationSubject)
          MBeanServerConnection.createMBean(String, ObjectName) メソッドを処理します。
 NotificationResult fetchNotifications(long clientSequenceNumber, int maxNotifications, long timeout)
          コネクタサーバから通知を受信します。
 Object getAttribute(ObjectName name, String attribute, Subject delegationSubject)
          MBeanServerConnection.getAttribute(ObjectName, String) メソッドを処理します。
 AttributeList getAttributes(ObjectName name, String[] attributes, Subject delegationSubject)
          MBeanServerConnection.getAttributes(ObjectName, String[]) メソッドを処理します。
 String getConnectionId()
          接続 ID を返します。
 String getDefaultDomain(Subject delegationSubject)
          MBeanServerConnection.getDefaultDomain() メソッドを処理します。
 String[] getDomains(Subject delegationSubject)
          MBeanServerConnection.getDomains() メソッドを処理します。
 Integer getMBeanCount(Subject delegationSubject)
          MBeanServerConnection.getMBeanCount() メソッドを処理します。
 MBeanInfo getMBeanInfo(ObjectName name, Subject delegationSubject)
          MBeanServerConnection.getMBeanInfo(ObjectName) メソッドを処理します。
 ObjectInstance getObjectInstance(ObjectName name, Subject delegationSubject)
          MBeanServerConnection.getObjectInstance(ObjectName) メソッドを処理します。
 Object invoke(ObjectName name, String operationName, MarshalledObject params, String[] signature, Subject delegationSubject)
          MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) メソッドを処理します。
 boolean isInstanceOf(ObjectName name, String className, Subject delegationSubject)
          MBeanServerConnection.isInstanceOf(ObjectName, String) メソッドを処理します。
 boolean isRegistered(ObjectName name, Subject delegationSubject)
          MBeanServerConnection.isRegistered(ObjectName) メソッドを処理します。
 Set<ObjectInstance> queryMBeans(ObjectName name, MarshalledObject query, Subject delegationSubject)
          MBeanServerConnection.queryMBeans(ObjectName, QueryExp) メソッドを処理します。
 Set<ObjectName> queryNames(ObjectName name, MarshalledObject query, Subject delegationSubject)
          MBeanServerConnection.queryNames(ObjectName, QueryExp) メソッドを処理します。
 void removeNotificationListener(ObjectName name, ObjectName listener, MarshalledObject filter, MarshalledObject handback, Subject delegationSubject)
          MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) メソッドを処理します。
 void removeNotificationListener(ObjectName name, ObjectName listener, Subject delegationSubject)
          MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) メソッドを処理します。
 void removeNotificationListeners(ObjectName name, Integer[] listenerIDs, Subject delegationSubject)
          removeNotificationListener(ObjectName, NotificationListener) および removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) メソッドを処理します。
 void setAttribute(ObjectName name, MarshalledObject attribute, Subject delegationSubject)
          MBeanServerConnection.setAttribute(ObjectName, Attribute) メソッドを処理します。
 AttributeList setAttributes(ObjectName name, MarshalledObject attributes, Subject delegationSubject)
          MBeanServerConnection.setAttributes(ObjectName, AttributeList) メソッドを処理します。
 String toString()
          このオブジェクトの文字列表現を返します。
 void unreferenced()
          RMI ランタイムによって、参照リスト (リモートオブジェクトを参照するクライアントのリスト) が空になったと判断されたしばらくあとに呼び出されます。
 void unregisterMBean(ObjectName name, Subject delegationSubject)
          MBeanServerConnection.unregisterMBean(ObjectName) メソッドを処理します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

RMIConnectionImpl

public RMIConnectionImpl(RMIServerImpl rmiServer,
                         String connectionId,
                         ClassLoader defaultClassLoader,
                         Subject subject,
                         Map<String,?> env)
新しい RMIConnection を構築します。この接続は、JRMP または IIOP トランスポートで使用できます。このオブジェクトは自身をエクスポートしません。このオブジェクトは、呼び出し側によって適切にエクスポートされます (RMIJRMPServerImpl.makeClient(String,Subject) および RMIIIOPServerImpl.makeClient(String,Subject) を参照)。

パラメータ:
rmiServer - RMIServerImpl オブジェクト。この接続は、このオブジェクト用に作成される。このパラメータが null の場合の動作は不定
connectionId - この接続の ID。このパラメータが null の場合の動作は不定
defaultClassLoader - 整列化オブジェクトの直列化復元時に使用されるデフォルトの ClassLoader。ブートストラップクラスローダを指定する場合は null も可
subject - 承認に使用する認証済み非認証者。認証済みの非認証者が存在しないことを指定する場合は null も可
env - 新しい RMIServerImpl の属性を含む環境。null の場合、空マップと同等
メソッドの詳細

getConnectionId

public String getConnectionId()
                       throws IOException
インタフェース RMIConnection の記述:

接続 ID を返します。この文字列は、指定の RMI コネクタサーバへの有効な接続ごとに異なります。

定義:
インタフェース RMIConnection 内の getConnectionId
戻り値:
接続 ID
例外:
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnector.connect

close

public void close()
           throws IOException
インタフェース RMIConnection の記述:

この接続を終了します。このメソッドの終了時には、これ以上リモート呼び出しの失敗が起こらないように、このインタフェースを実装する RMI オブジェクトがアンエクスポートされます。

定義:
インタフェース RMIConnection 内の close
例外:
IOException - 接続を終了できなかった場合、Remote オブジェクトをアンエクスポートできなかった場合、またはリモート終了要求の転送時に通信障害が発生した場合

unreferenced

public void unreferenced()
インタフェース Unreferenced の記述:
RMI ランタイムによって、参照リスト (リモートオブジェクトを参照するクライアントのリスト) が空になったと判断されたしばらくあとに呼び出されます。

定義:
インタフェース Unreferenced 内の unreferenced

createMBean

public ObjectInstance createMBean(String className,
                                  ObjectName name,
                                  Subject delegationSubject)
                           throws ReflectionException,
                                  InstanceAlreadyExistsException,
                                  MBeanRegistrationException,
                                  MBeanException,
                                  NotCompliantMBeanException,
                                  IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.createMBean(String, ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の createMBean
パラメータ:
className - インスタンス化する MBean のクラス名
name - MBean のオブジェクト名。null も可
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
新しくインスタンス化された MBean の ObjectName と Java クラス名を含む ObjectInstanceObjectNamen の場合、Java クラス名は getMBeanInfo(n).getClassName()
例外:
ReflectionException - MBean のコンストラクタの呼び出し時に発行される java.lang.ClassNotFoundException または java.lang.Exception をラップする
InstanceAlreadyExistsException - MBean がすでに MBean サーバによって制御されている場合
MBeanRegistrationException - MBean の preRegister (MBeanRegistration interface) メソッドが例外をスローした。MBean は登録されない
MBeanException - MBean のコンストラクタが例外をスローした
NotCompliantMBeanException - このクラスが JMX 準拠の MBean でない
IOException - 一般的な通信例外が発生した場合

createMBean

public ObjectInstance createMBean(String className,
                                  ObjectName name,
                                  ObjectName loaderName,
                                  Subject delegationSubject)
                           throws ReflectionException,
                                  InstanceAlreadyExistsException,
                                  MBeanRegistrationException,
                                  MBeanException,
                                  NotCompliantMBeanException,
                                  InstanceNotFoundException,
                                  IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.createMBean(String, ObjectName, ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の createMBean
パラメータ:
className - インスタンス化する MBean のクラス名
name - MBean のオブジェクト名。null も可
loaderName - 使用するクラスローダのオブジェクト名
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
新しくインスタンス化された MBean の ObjectName と Java クラス名を含む ObjectInstanceObjectNamen の場合、Java クラス名は getMBeanInfo(n).getClassName()
例外:
ReflectionException - MBean のコンストラクタの呼び出し時に発行される java.lang.ClassNotFoundException または java.lang.Exception をラップする
InstanceAlreadyExistsException - MBean がすでに MBean サーバによって制御されている場合
MBeanRegistrationException - MBean の preRegister (MBeanRegistration interface) メソッドが例外をスローした。MBean は登録されない
MBeanException - MBean のコンストラクタが例外をスローした
NotCompliantMBeanException - このクラスが JMX 準拠の MBean でない
InstanceNotFoundException - 指定されたクラスローダが MBean サーバに登録されていない場合
IOException - 一般的な通信例外が発生した場合

createMBean

public ObjectInstance createMBean(String className,
                                  ObjectName name,
                                  MarshalledObject params,
                                  String[] signature,
                                  Subject delegationSubject)
                           throws ReflectionException,
                                  InstanceAlreadyExistsException,
                                  MBeanRegistrationException,
                                  MBeanException,
                                  NotCompliantMBeanException,
                                  IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) メソッドを処理します。Object[] パラメータは MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の createMBean
パラメータ:
className - インスタンス化する MBean のクラス名
name - MBean のオブジェクト名。null も可
params - コンストラクタのパラメータを含む配列。この配列は、呼び出されたあと、MarshalledObject にカプセル化される。カプセル化された配列が null の場合、空配列と同じ意味になる
signature - コンストラクタのシグニチャーを含む配列。この配列が呼び出される。null の場合、空配列と同じ意味になる
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
新しくインスタンス化された MBean の ObjectName と Java クラス名を含む ObjectInstanceObjectNamen の場合、Java クラス名は getMBeanInfo(n).getClassName()
例外:
ReflectionException - MBean のコンストラクタの呼び出し時に発行される java.lang.ClassNotFoundException または java.lang.Exception をラップする
InstanceAlreadyExistsException - MBean がすでに MBean サーバによって制御されている場合
MBeanRegistrationException - MBean の preRegister (MBeanRegistration interface) メソッドが例外をスローした。MBean は登録されない
MBeanException - MBean のコンストラクタが例外をスローした
NotCompliantMBeanException - このクラスが JMX 準拠の MBean でない
IOException - 一般的な通信例外が発生した場合

createMBean

public ObjectInstance createMBean(String className,
                                  ObjectName name,
                                  ObjectName loaderName,
                                  MarshalledObject params,
                                  String[] signature,
                                  Subject delegationSubject)
                           throws ReflectionException,
                                  InstanceAlreadyExistsException,
                                  MBeanRegistrationException,
                                  MBeanException,
                                  NotCompliantMBeanException,
                                  InstanceNotFoundException,
                                  IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) メソッドを処理します。Object[] パラメータは MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の createMBean
パラメータ:
className - インスタンス化する MBean のクラス名
name - MBean のオブジェクト名。null も可
loaderName - 使用するクラスローダのオブジェクト名
params - コンストラクタのパラメータを含む配列。この配列は、呼び出されたあと、MarshalledObject にカプセル化される。カプセル化された配列が null の場合、空配列と同じ意味になる
signature - コンストラクタのシグニチャーを含む配列。この配列が呼び出される。null の場合、空配列と同じ意味になる
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
新しくインスタンス化された MBean の ObjectName と Java クラス名を含む ObjectInstanceObjectNamen の場合、Java クラス名は getMBeanInfo(n).getClassName()
例外:
ReflectionException - MBean のコンストラクタの呼び出し時に発行される java.lang.ClassNotFoundException または java.lang.Exception をラップする
InstanceAlreadyExistsException - MBean がすでに MBean サーバによって制御されている場合
MBeanRegistrationException - MBean の preRegister (MBeanRegistration interface) メソッドが例外をスローした。MBean は登録されない
MBeanException - MBean のコンストラクタが例外をスローした
NotCompliantMBeanException - このクラスが JMX 準拠の MBean でない
InstanceNotFoundException - 指定されたクラスローダが MBean サーバに登録されていない場合
IOException - 一般的な通信例外が発生した場合

unregisterMBean

public void unregisterMBean(ObjectName name,
                            Subject delegationSubject)
                     throws InstanceNotFoundException,
                            MBeanRegistrationException,
                            IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.unregisterMBean(ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の unregisterMBean
パラメータ:
name - 登録解除する MBean のオブジェクト名
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
MBeanRegistrationException - MBean の preDeregister (MBeanRegistration interface) メソッドが例外をスローした
IOException - 一般的な通信例外が発生した場合

getObjectInstance

public ObjectInstance getObjectInstance(ObjectName name,
                                        Subject delegationSubject)
                                 throws InstanceNotFoundException,
                                        IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getObjectInstance(ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の getObjectInstance
パラメータ:
name - MBean のオブジェクト名
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
name で指定された MBean に関連付けられた ObjectInstanceObjectNamename で、含まれるクラス名は getMBeanInfo(name).getClassName()
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
IOException - 一般的な通信例外が発生した場合

queryMBeans

public Set<ObjectInstance> queryMBeans(ObjectName name,
                                       MarshalledObject query,
                                       Subject delegationSubject)
                                throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.queryMBeans(ObjectName, QueryExp) メソッドを処理します。QueryExpMarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の queryMBeans
パラメータ:
name - 取得する MBean を識別するオブジェクト名パターン。null の場合、またはドメインやキーのプロパティが指定されていない場合は、登録されているすべての MBean が取得される
query - MBean の選択に適用されるクエリー式。MarshalledObject にカプセル化されている。MarshalledObject に null 値がカプセル化されている場合、MBean の選択にクエリー式は適用されない
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
選択された MBean の ObjectInstance オブジェクトを含むセット。クエリーの条件を満たす MBean が存在しない場合、空のリストが返される
例外:
IOException - 一般的な通信例外が発生した場合

queryNames

public Set<ObjectName> queryNames(ObjectName name,
                                  MarshalledObject query,
                                  Subject delegationSubject)
                           throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.queryNames(ObjectName, QueryExp) メソッドを処理します。QueryExpMarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の queryNames
パラメータ:
name - 取得する MBean 名を識別するオブジェクト名パターン。null の場合、またはドメインやキーのプロパティが指定されていない場合は、登録されているすべての MBean の名前が取得される
query - MBean の選択に適用されるクエリー式。MarshalledObject にカプセル化されている。MarshalledObject に null 値がカプセル化されている場合、MBean の選択にクエリー式は適用されない
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
選択された MBean の ObjectName を含むセット。クエリーの条件を満たす MBean が存在しない場合、空のリストが返される
例外:
IOException - 一般的な通信例外が発生した場合

isRegistered

public boolean isRegistered(ObjectName name,
                            Subject delegationSubject)
                     throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.isRegistered(ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の isRegistered
パラメータ:
name - チェック対象の MBean のオブジェクト名
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
MBean がすでに MBean サーバに登録されている場合は true、そうでない場合は false
例外:
IOException - 一般的な通信例外が発生した場合

getMBeanCount

public Integer getMBeanCount(Subject delegationSubject)
                      throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getMBeanCount() メソッドを処理します。

定義:
インタフェース RMIConnection 内の getMBeanCount
パラメータ:
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
登録済みの MBean の数
例外:
IOException - 一般的な通信例外が発生した場合

getAttribute

public Object getAttribute(ObjectName name,
                           String attribute,
                           Subject delegationSubject)
                    throws MBeanException,
                           AttributeNotFoundException,
                           InstanceNotFoundException,
                           ReflectionException,
                           IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getAttribute(ObjectName, String) メソッドを処理します。

定義:
インタフェース RMIConnection 内の getAttribute
パラメータ:
name - MBean のオブジェクト名。この MBean の属性が取得される
attribute - 取得される属性の名前を指定する String
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
取得される属性の値
例外:
MBeanException - MBean の取得メソッドによってスローされる例外をラップする場合
AttributeNotFoundException - MBean の指定された属性がアクセス不能である場合
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
ReflectionException - 取得メソッドの呼び出し時にスローされる java.lang.Exception をラップする
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.setAttribute(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

getAttributes

public AttributeList getAttributes(ObjectName name,
                                   String[] attributes,
                                   Subject delegationSubject)
                            throws InstanceNotFoundException,
                                   ReflectionException,
                                   IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getAttributes(ObjectName, String[]) メソッドを処理します。

定義:
インタフェース RMIConnection 内の getAttributes
パラメータ:
name - MBean のオブジェクト名。この MBean の属性が取得される
attributes - 取得される属性のリスト
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
取得される属性のリスト
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
ReflectionException - Dynamic MBean の getAttributes メソッドの呼び出し時に例外が発生した場合
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.setAttributes(javax.management.ObjectName, java.rmi.MarshalledObject, javax.security.auth.Subject)

setAttribute

public void setAttribute(ObjectName name,
                         MarshalledObject attribute,
                         Subject delegationSubject)
                  throws InstanceNotFoundException,
                         AttributeNotFoundException,
                         InvalidAttributeValueException,
                         MBeanException,
                         ReflectionException,
                         IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.setAttribute(ObjectName, Attribute) メソッドを処理します。Attribute パラメータは MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の setAttribute
パラメータ:
name - MBean 名。この MBean の属性が設定される
attribute - 設定される属性と、設定後 MarshalledObject にカプセル化される値の ID
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
AttributeNotFoundException - MBean の指定された属性がアクセス不能である場合
InvalidAttributeValueException - 指定された値が、属性に対する有効な値でない場合
MBeanException - MBean の設定メソッドによってスローされる例外をラップする場合
ReflectionException - 設定メソッドの呼び出し時にスローされる java.lang.Exception をラップする
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.getAttribute(javax.management.ObjectName, java.lang.String, javax.security.auth.Subject)

setAttributes

public AttributeList setAttributes(ObjectName name,
                                   MarshalledObject attributes,
                                   Subject delegationSubject)
                            throws InstanceNotFoundException,
                                   ReflectionException,
                                   IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.setAttributes(ObjectName, AttributeList) メソッドを処理します。AttributeList パラメータは MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の setAttributes
パラメータ:
name - MBean のオブジェクト名。この MBean の属性が設定される
attributes - 属性のリスト。設定される属性と、設定後 MarshalledObject にカプセル化される値の ID
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
設定された属性と新しい値のリスト
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
ReflectionException - Dynamic MBean の getAttributes メソッドの呼び出し時に例外が発生した場合
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.getAttributes(javax.management.ObjectName, java.lang.String[], javax.security.auth.Subject)

invoke

public Object invoke(ObjectName name,
                     String operationName,
                     MarshalledObject params,
                     String[] signature,
                     Subject delegationSubject)
              throws InstanceNotFoundException,
                     MBeanException,
                     ReflectionException,
                     IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) メソッドを処理します。Object[] パラメータは MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の invoke
パラメータ:
name - メソッドの呼び出しが行われる MBean のオブジェクト名
operationName - 呼び出されるオペレーションの名前
params - オペレーションが呼び出され、MarshalledObject にカプセル化されたとき設定されるパラメータを含む配列。カプセル化された配列が null の場合、空配列と同じ意味になる
signature - オペレーションのシグニチャーを含む配列。クラスオブジェクトのロードには、オペレーションを呼び出した MBean をロードするときと同じクラスローダが使用される。null の場合、空配列と同じ意味になる
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
オペレーションによって返されるオブジェクト。指定された MBean 上でオペレーションを呼び出した結果を表す
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
MBeanException - MBean の呼び出しメソッドによってスローされる例外をラップする場合
ReflectionException - メソッドの呼び出し時にスローされる java.lang.Exception をラップする
IOException - 一般的な通信例外が発生した場合

getDefaultDomain

public String getDefaultDomain(Subject delegationSubject)
                        throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getDefaultDomain() メソッドを処理します。

定義:
インタフェース RMIConnection 内の getDefaultDomain
パラメータ:
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
デフォルトのドメイン
例外:
IOException - 一般的な通信例外が発生した場合

getDomains

public String[] getDomains(Subject delegationSubject)
                    throws IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getDomains() メソッドを処理します。

定義:
インタフェース RMIConnection 内の getDomains
パラメータ:
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
ドメインのリスト
例外:
IOException - 一般的な通信例外が発生した場合

getMBeanInfo

public MBeanInfo getMBeanInfo(ObjectName name,
                              Subject delegationSubject)
                       throws InstanceNotFoundException,
                              IntrospectionException,
                              ReflectionException,
                              IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.getMBeanInfo(ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の getMBeanInfo
パラメータ:
name - 分析対象の MBean の名前
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
MBeanInfo のインスタンス。この MBean のすべての属性とオペレーションの取得を許可する
例外:
InstanceNotFoundException - 指定された MBean が見つからなかった場合
IntrospectionException - イントロスペクション中に例外が発生した場合
ReflectionException - Dynamic MBean の getMBeanInfo メソッドの呼び出し時に例外が発生した場合
IOException - 一般的な通信例外が発生した場合

isInstanceOf

public boolean isInstanceOf(ObjectName name,
                            String className,
                            Subject delegationSubject)
                     throws InstanceNotFoundException,
                            IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.isInstanceOf(ObjectName, String) メソッドを処理します。

定義:
インタフェース RMIConnection 内の isInstanceOf
パラメータ:
name - MBean の ObjectName
className - クラスの名前
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
戻り値:
上記の規則に従って、指定された MBean が指定されたクラスのインスタンスである場合は true、そうでない場合は false
例外:
InstanceNotFoundException - 指定された MBean が MBean サーバに登録されていない場合
IOException - 一般的な通信例外が発生した場合

addNotificationListeners

public Integer[] addNotificationListeners(ObjectName[] names,
                                          MarshalledObject[] filters,
                                          Subject[] delegationSubjects)
                                   throws InstanceNotFoundException,
                                          IOException
インタフェース RMIConnection の記述:

MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) メソッドを処理します。

指定されたフィルタに一致する MBean からの通知を登録します。リモートクライアントは、その後、fetchNotifications メソッドを使ってこれらの通知を取得できます。

クライアント側には、リスナーごとに元の NotificationListenerhandback が保持されます。クライアントがこれらを識別できるように、サーバは一意の listenerID を生成し、返します。この listenerIDNotification とともにリモートクライアントに転送されます。

指定されたペア (name, filter) のいずれかを登録できない場合、オペレーションは例外を発行して終了します。この場合、名前もフィルタも登録されません。

定義:
インタフェース RMIConnection 内の addNotificationListeners
パラメータ:
names - Notification の発行元 MBean を識別する ObjectName
filters - NotificationFilter の整列化された表現から成る配列。この配列の要素は null でもよい
delegationSubjects - Subject。この Subject (複数可) の代わりにリスナーが追加される。この配列の要素は null でもよい。また、delegationSubjects パラメータ自体が null であってもよい。この場合、この配列は、name 配列や filter 配列と同じサイズの null 値から成る配列と同等になる
戻り値:
ローカルリスナーを識別する listenerID から成る配列。この配列はパラメータと同じ数の要素を持つ
例外:
InstanceNotFoundException - name のいずれかが登録済み MBean に対応していない場合
IOException - 一般的な通信例外が発生した場合

addNotificationListener

public void addNotificationListener(ObjectName name,
                                    ObjectName listener,
                                    MarshalledObject filter,
                                    MarshalledObject handback,
                                    Subject delegationSubject)
                             throws InstanceNotFoundException,
                                    IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) メソッドを処理します。NotificationFilter パラメータは MarshalledObject にラップされています。Object (ハンドバック) パラメータも MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の addNotificationListener
パラメータ:
name - リスナーが追加される MBean の名前
listener - 登録済み MBean が発行した通知を処理するリスナーのオブジェクト名
filter - MarshalledObject にカプセル化されたフィルタオブジェクト。MarshalledObject にカプセル化されたフィルタが null 値を持つ場合、通知の処理前にフィルタリングは行われない
handback - 通知が発行されたときリスナーに送信されるコンテキスト。MarshalledObject にカプセル化されている
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 登録済み MBean の中に、通知リスナーまたは通知ブロードキャスタの MBean 名がない場合
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.removeNotificationListener(ObjectName, ObjectName, Subject), RMIConnection.removeNotificationListener(ObjectName, ObjectName, MarshalledObject, MarshalledObject, Subject)

removeNotificationListeners

public void removeNotificationListeners(ObjectName name,
                                        Integer[] listenerIDs,
                                        Subject delegationSubject)
                                 throws InstanceNotFoundException,
                                        ListenerNotFoundException,
                                        IOException
インタフェース RMIConnection の記述:

removeNotificationListener(ObjectName, NotificationListener) および removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) メソッドを処理します。

このメソッドは、MBean サーバ内の指定された MBean から、1 つ以上の NotificationListener を削除します。

NotificationListener は、RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]) メソッドから返された ID によって識別されます。

定義:
インタフェース RMIConnection 内の removeNotificationListeners
パラメータ:
name - Notification の発行元 MBean を識別する ObjectName
listenerIDs - 削除するリスナーに対応する ID のリスト
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 指定された name が登録済み MBean に対応していない場合
ListenerNotFoundException - サーバ側に見つからないリスナーがある場合。この例外は、MBean が、MBeanServer.removeNotificationListener の呼び出し以外の何らかの理由でリスナーを破棄したとき発行される
IOException - 一般的な通信例外が発生した場合

removeNotificationListener

public void removeNotificationListener(ObjectName name,
                                       ObjectName listener,
                                       Subject delegationSubject)
                                throws InstanceNotFoundException,
                                       ListenerNotFoundException,
                                       IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) メソッドを処理します。

定義:
インタフェース RMIConnection 内の removeNotificationListener
パラメータ:
name - リスナーが削除される MBean の名前
listener - 削除されるリスナーのオブジェクト名
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 登録済み MBean の中に、指定された MBean 名がない場合
ListenerNotFoundException - リスナーが MBean に登録されていない場合
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)

removeNotificationListener

public void removeNotificationListener(ObjectName name,
                                       ObjectName listener,
                                       MarshalledObject filter,
                                       MarshalledObject handback,
                                       Subject delegationSubject)
                                throws InstanceNotFoundException,
                                       ListenerNotFoundException,
                                       IOException
インタフェース RMIConnection の記述:
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) メソッドを処理します。NotificationFilter パラメータは MarshalledObject にラップされています。Object パラメータも MarshalledObject にラップされています。

定義:
インタフェース RMIConnection 内の removeNotificationListener
パラメータ:
name - リスナーが削除される MBean の名前
listener - 以前にこの MBean に追加されたリスナー
filter - リスナーの追加時に指定されたフィルタ。MarshalledObject にカプセル化されている
handback - リスナーの追加時に指定されたハンドバック。MarshalledObject にカプセル化されている
delegationSubject - 委譲主体を含む Subject。認証主体が使用されている場合は null
例外:
InstanceNotFoundException - 登録済み MBean の中に、指定された MBean 名がない場合
ListenerNotFoundException - リスナーが MBean に登録されていない場合、または指定されたフィルタおよびハンドバックで登録されていない場合
IOException - 一般的な通信例外が発生した場合
関連項目:
RMIConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, java.rmi.MarshalledObject, java.rmi.MarshalledObject, javax.security.auth.Subject)

fetchNotifications

public NotificationResult fetchNotifications(long clientSequenceNumber,
                                             int maxNotifications,
                                             long timeout)
                                      throws IOException
インタフェース RMIConnection の記述:

コネクタサーバから通知を受信します。このメソッドは、1 つ以上通知が発行されるか、指定されたタイムアウトに達するまでブロックできます。また、通知が 0 であればいつでも終了できます。

シーケンス番号が clientSequenceNumber 以上で、このクライアントが通知を受け付けるフィルタを使って通知の発行元 MBean のリスナーを 1 つ以上登録している場合、この通知を結果に含めることができます。この通知を待機する各リスナーは、RMIConnection.addNotificationListeners(ObjectName[], MarshalledObject[], Subject[]) によって返された整数値の ID によって識別されます。

定義:
インタフェース RMIConnection 内の fetchNotifications
パラメータ:
clientSequenceNumber - クライアントが待機する最初のシーケンス番号。負の値の場合、次の通知のシーケンス番号と解釈される
maxNotifications - 返される異なった通知の最大数。同じ通知が繰り返し発行される場合、返される NotificationResult に含まれる TargetedNotification 配列は、この値より多くの要素を持つことができる。このパラメータの値が負の場合の動作は不定
timeout - 通知の着信を待つ最大時間 (ミリ秒単位)。0 の場合、通知がないとメソッドは待機せず、ただちに終了する。Long.MAX_VALUE の場合、タイムアウトは設定されない。このパラメータの値が負の場合の動作は不定
戻り値:
NotificationResult
例外:
IOException - 一般的な通信例外が発生した場合

toString

public String toString()

このオブジェクトの文字列表現を返します。通常、toString メソッドはこのオブジェクトを「テキストで表現する」文字列を返します。この結果は、人間が読める簡潔で有益な情報であるべきです。

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクトの String 表現

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。