JavaTM 2 Platform
Standard Ed. 5.0

java.rmi.server
インタフェース RemoteRef

すべてのスーパーインタフェース:
Externalizable, Serializable
既知のサブインタフェースの一覧:
ServerRef

public interface RemoteRef
extends Externalizable

RemoteRef は、リモートオブジェクトのハンドルを表します。RemoteStub は、リモート参照を使ってリモートオブジェクトへのリモートメソッド呼び出しを実行します。

導入されたバージョン:
JDK1.1
関連項目:
RemoteStub

フィールドの概要
static String packagePrefix
          サーバパッケージを初期化するための接頭辞です。
static long serialVersionUID
          JDK 1.1.x バージョンのクラスとの互換性を示します。
 
メソッドの概要
 void done(RemoteCall call)
          推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。リモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使ってパラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。
 String getRefClass(ObjectOutput out)
          out ストリームに直列化される、参照型のクラス名を返します。
 void invoke(RemoteCall call)
          推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。リモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使ってパラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。
 Object invoke(Remote obj, Method method, Object[] params, long opnum)
          メソッドを呼び出します。
 RemoteCall newCall(RemoteObject obj, Operation[] op, int opnum, long hash)
          推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。スタブのリモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使って、パラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。
 boolean remoteEquals(RemoteRef obj)
          2 つのリモートオブジェクトが等しいかどうかを比較します。
 int remoteHashCode()
          リモートオブジェクトに対するハッシュコードを返します。
 String remoteToString()
          このリモートオブジェクトの参照を表す文字列を返します。
 
インタフェース java.io.Externalizable から継承されたメソッド
readExternal, writeExternal
 

フィールドの詳細

serialVersionUID

static final long serialVersionUID
JDK 1.1.x バージョンのクラスとの互換性を示します。

関連項目:
定数フィールド値

packagePrefix

static final String packagePrefix
サーバパッケージを初期化するための接頭辞です。サーバ参照クラス (UnicastRef、UnicastServerRef など) の実装が、その接頭辞で定義されているパッケージの中に置かれていると仮定します。

関連項目:
定数フィールド値
メソッドの詳細

invoke

Object invoke(Remote obj,
              Method method,
              Object[] params,
              long opnum)
              throws Exception
メソッドを呼び出します。参照へのこの形式の委譲メソッド呼び出しによって、参照はリモートホストとの接続のセットアップの処理、メソッドおよびパラメータの一部に対する表現の整列化、リモートホストに対するメソッド呼び出しの通信を行うことができます。このメソッドは、リモートホスト上のリモートオブジェクトに対するメソッド呼び出しの結果を返すか、例外をスローするかのどちらかです。呼び出しが失敗した場合には RemoteException、リモート呼び出しが例外をスローした場合にはアプリケーションレベルの例外がそれぞれスローされます。

パラメータ:
obj - オブジェクトに対する RemoteStub などの RemoteRef を持つオブジェクト
method - 呼び出されるメソッド
params - パラメータのリスト
opnum - メソッドを表現するために使用されるハッシュ
戻り値:
リモートメソッド呼び出しの結果
例外:
Exception - リモートメソッド呼び出し中に例外が発生した場合
導入されたバージョン:
1.2

newCall

@Deprecated
RemoteCall newCall(RemoteObject obj,
                              Operation[] op,
                              int opnum,
                              long hash)
                   throws RemoteException
推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。スタブのリモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使って、パラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。

このオブジェクト上で起動される新しいリモートメソッドに対して、適切な呼び出しオブジェクトを作成します。オペレーション配列とインデックスを渡すと、スタブジェネレータがオペレーションインデックスの割り当ておよび解釈を行うことが可能になります。リモート参照では、呼び出しの中で符号化するためにそのオペレーションを必要とする場合があります。

パラメータ:
obj - 呼び出しを行うリモートスタブ
op - スタブオペレーションの配列
opnum - オペレーション番号
hash - スタブまたはスケルトンのインタフェースハッシュ
戻り値:
リモート呼び出しを表す呼び出しオブジェクト
例外:
RemoteException - 新しいリモート呼び出しの開始が失敗した場合
導入されたバージョン:
JDK1.1
関連項目:
invoke(Remote,java.lang.reflect.Method,Object[],long)

invoke

@Deprecated
void invoke(RemoteCall call)
            throws Exception
推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。リモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使ってパラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。

リモート呼び出しを実行します。invoke はスタブを通過してキャッチされないあらゆる「ユーザ」例外を発行します。リモート呼び出し中に例外を発行する場合、invoke は、接続をクリーンアップしたあとで「ユーザ」またはリモート例外を発行する必要があります。

パラメータ:
call - リモート呼び出しを表すオブジェクト
例外:
Exception - リモートメソッド中に例外が発生した場合
導入されたバージョン:
JDK1.1
関連項目:
invoke(Remote,java.lang.reflect.Method,Object[],long)

done

@Deprecated
void done(RemoteCall call)
          throws RemoteException
推奨されていません。 JDK 1.2 形式のスタブは、このメソッドを使用しません。リモート参照で一連のメソッド呼び出し (newCallinvoke、および done) を使う代わりに、スタブはリモート参照で invoke(Remote, Method, Object[], int) メソッドだけを使ってパラメータの整列化、リモートメソッドの実行、および戻り値の非整列化を実行します。

リモート参照に接続をクリーンアップする (または再使用する) ことを許可します。done は、起動が成功して (例外が発生することなく) スタブに戻る場合にだけ呼び出すようにします。

パラメータ:
call - リモート呼び出しを表すオブジェクト
例外:
RemoteException - 呼び出しのクリーンアップ中にエラーが発生した場合
導入されたバージョン:
JDK1.1
関連項目:
invoke(Remote,java.lang.reflect.Method,Object[],long)

getRefClass

String getRefClass(ObjectOutput out)
out ストリームに直列化される、参照型のクラス名を返します。

パラメータ:
out - 参照が直列化される先の出力ストリーム
戻り値:
参照型のクラス名 (パッケージ修飾なし)
導入されたバージョン:
JDK1.1

remoteHashCode

int remoteHashCode()
リモートオブジェクトに対するハッシュコードを返します。同じリモートオブジェクトを参照する 2 つのリモートオブジェクトのスタブは、同じハッシュコードを持ちます (ハッシュテーブルのキーとしてリモートオブジェクトをサポートするため)。

戻り値:
リモートオブジェクトのハッシュコード
導入されたバージョン:
JDK1.1
関連項目:
Hashtable

remoteEquals

boolean remoteEquals(RemoteRef obj)
2 つのリモートオブジェクトが等しいかどうかを比較します。このリモートオブジェクトが指定されたオブジェクトと同等であるかどうかを示す boolean 値を返します。このメソッドは、リモートオブジェクトがハッシュテーブルに格納されている場合に使用されます。

パラメータ:
obj - 比較対象のオブジェクト
戻り値:
2 つの Object が等しい場合は true。そうでない場合は false
導入されたバージョン:
JDK1.1
関連項目:
Hashtable

remoteToString

String remoteToString()
このリモートオブジェクトの参照を表す文字列を返します。

戻り値:
リモートオブジェクト参照を表す文字列
導入されたバージョン:
JDK1.1

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 も参照してください。