java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteObjectInvocationHandler
- すべての実装されたインタフェース:
- Serializable,- InvocationHandler,- Remote
public class RemoteObjectInvocationHandler extends RemoteObject implements InvocationHandler
Java Remote Method Invocation (Java RMI)で使用するための
InvocationHandlerインタフェースの実装です。 この呼出しハンドラは、動的プロキシ・インスタンスと組み合わせて、事前生成されたスタブ・クラスの代わりとして使用できます。 
 アプリケーションがこのクラスを直接使用することは想定されていません。 UnicastRemoteObjectまたはActivatableを使って動的プロキシとしてエクスポートされたリモート・オブジェクトは、このクラスのインスタンスをそのプロキシの呼出しハンドラとして含みます。 
- 導入されたバージョン:
- 1.5
- 関連項目:
- 直列化された形式
- 
フィールドのサマリー
- 
コンストラクタのサマリーコンストラクタ コンストラクタ 説明 RemoteObjectInvocationHandler(RemoteRef ref)指定されたRemoteRefを使って新しいRemoteObjectInvocationHandlerを作成します。
- 
メソッドのサマリー
- 
コンストラクタの詳細- 
RemoteObjectInvocationHandlerpublic RemoteObjectInvocationHandler(RemoteRef ref)指定されたRemoteRefを使って新しいRemoteObjectInvocationHandlerを作成します。- パラメータ:
- ref- リモート参照
- 例外:
- NullPointerException-- refが- nullである場合
 
 
- 
- 
メソッドの詳細- 
invokeこのオブジェクトをカプセル化しているプロキシ・インスタンスproxy上で発行されたメソッド呼出しを処理し、その結果を返します。RemoteObjectInvocationHandlerでは、このメソッドは次のように実装されています。methodが次のメソッドのいずれかである場合、それらは次のように処理されます。- Object.hashCode: プロキシのハッシュ・コード値を返します。
- Object.equals: 引数(- args[0])が動的プロキシ・クラスのインスタンスであり、かつその引数の呼出しハンドラがこの呼出しハンドラと等しい場合は- trueを返し、それ以外の場合は- falseを返します。
- Object.toString: プロキシの文字列表現を返します。
 methodがObject.finalizeを上書きする場合は無視されます。そうでない場合、リモート呼出しが次のようにして実行されます。 - proxyが- Remoteインタフェースのインスタンスでない場合は、- IllegalArgumentExceptionがスローされます。
- それ以外の場合は、この呼出しハンドラのRemoteRefに対してinvokeメソッドが呼び出されます。その際、引数としてproxy、method、args、およびmethodに対するメソッド・ハッシュ(「Java Remote Method Invocation (RMI)仕様」のセクション8.3で定義されている)が渡されます。そして、その結果が返されます。
- RemoteRef.invokeから例外がスローされ、かつその例外が、- proxyのクラスで実装されているメソッドの- throws節に指定されたどの例外にも割り当てられないチェック例外であった場合、その例外が- UnexpectedException内にラップされ、そのラップされた例外がスローされます。 それ以外の場合は、- invokeによってスローされた例外がこのメソッドによってスローされます。
 この呼出しハンドラを含む有効な動的プロキシ・クラスのインスタンスによって引数が生成されていなかった場合、このメソッドのセマンティックスは不明となります。 - 定義:
- invoke、インタフェース:- InvocationHandler
- パラメータ:
- proxy- メソッドが呼び出されるプロキシ・インスタンス
- method- プロキシ・インスタンスで呼び出されるインタフェース・メソッドに対応する- Methodインスタンス
- args- プロキシ・インスタンスでのメソッド呼出し時に渡される引数値を格納するオブジェクト配列。メソッドが引数を取らない場合は- null。
- 戻り値:
- プロキシ・インスタンスでのメソッド呼び出しからの戻り値
- 例外:
- Throwable- プロキシ・インスタンスでのメソッド呼び出しからスローされる例外
- 関連項目:
- UndeclaredThrowableException
 
 
-