JavaTM 2
Platform
Std. Ed. v1.4.0

org.omg.CORBA.portable
クラス Delegate

java.lang.Object
  |
  +--org.omg.CORBA.portable.Delegate
直系の既知のサブクラス:
Delegate

public abstract class Delegate
extends Object

ORB ベンダー固有の org.omg.CORBA.Object メソッドを実装するためのポータブル API を指定します。 各スタブ (プロキシ) は、すべての org.omg.CORBA.Object メソッドの転送先となる委譲オブジェクトを格納します。これにより、あるベンダーの ORB によって生成されたスタブが、他のベンダーの ORB からの委譲オブジェクトとともに動作できます。

関連項目:
Object

コンストラクタの概要
Delegate()
           
 
メソッドの概要
abstract  Request create_request(Object obj, Context ctx, String operation, NVList arg_list, NamedValue result)
          Dynamic Invocation Interface で使用される Request のインタフェースを作成します。
abstract  Request create_request(Object obj, Context ctx, String operation, NVList arg_list, NamedValue result, ExceptionList exclist, ContextList ctxlist)
          Dynamic Invocation Interface で使用される Request のインタフェースを作成します。
abstract  Object duplicate(Object obj)
          指定されたオブジェクト参照の複製を返します。
 boolean equals(Object self, Object obj)
          委譲 CORBA オブジェクトの equals(java.lang.Object obj) メソッドをオーバーライドする実装を提供します。
 DomainManager[] get_domain_managers(Object self)
          このオブジェクトの DomainManager を取り出します。
abstract  Object get_interface_def(Object self)
          指定されたオブジェクト参照の InterfaceDef を返します。
 Policy get_policy(Object self, int policy_type)
          このオブジェクトに適用する、指定された型の Policy オブジェクトを返します。
abstract  int hash(Object obj, int max)
          このオブジェクト参照の ORB 内部識別子 (ハッシュコード) を返します。
 int hashCode(Object self)
          委譲 CORBA オブジェクトの hashCode() メソッドをオーバーライドする実装を提供します。
 InputStream invoke(Object self, OutputStream output)
          invoke はオペレーションを呼び出すためにスタブによって呼び出されます。
abstract  boolean is_a(Object obj, String repository_id)
          オブジェクト参照が、指定されたインタフェースのインスタンスであるかどうかを判定します。
abstract  boolean is_equivalent(Object obj, Object other)
          2 つのオブジェクト参照が等価かどうかを判定します。
 boolean is_local(Object self)
          このオブジェクトがローカルサーバントによって実装される場合は true を返します。
abstract  boolean non_existent(Object obj)
          オブジェクト参照のサーバオブジェクトが破棄されているかどうかを判定します。
 ORB orb(Object obj)
          パラメータに関連した orb への参照を提供します。
abstract  void release(Object obj)
          指定されたオブジェクト参照に関連したリソースを解放します。
 void releaseReply(Object self, InputStream input)
          releaseReply は、非整列化が完了したときに ORB へ戻される応答ストリームを解放するために、スタブによって任意に呼び出されることがあります。
abstract  Request request(Object obj, String operation)
          Dynamic Invocation Interface で使用される Request のインタフェースを作成します。
 OutputStream request(Object self, String operation, boolean responseExpected)
          request は、引数の整列化のため、OutputStream を取得する目的でスタブによって呼び出されます。
 void servant_postinvoke(Object self, ServantObject servant)
          servant_postinvoke() は、ローカルサーバントでこのオペレーションが呼び出されたあとで、ローカルスタブによって呼び出されます。
 ServantObject servant_preinvoke(Object self, String operation, Class expectedType)
          この要求で使用される必要があるサーバントへの Java 参照を返します。
 Object set_policy_override(Object self, Policy[] policies, SetOverrideType set_add)
          渡されたポリシーを、返される新しく作成されたオブジェクト参照と関連付けます。
 String toString(Object self)
          委譲 CORBA オブジェクトの toString() メソッドをオーバーライドする実装を提供します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Delegate

public Delegate()
メソッドの詳細

get_interface_def

public abstract Object get_interface_def(Object self)
指定されたオブジェクト参照の InterfaceDef を返します。

パラメータ:
self - InterfaceDef を返す必要があるオブジェクト参照
戻り値:
InterfaceDef

duplicate

public abstract Object duplicate(Object obj)
指定されたオブジェクト参照の複製を返します。

パラメータ:
obj - 複製を返す必要があるオブジェクト参照
戻り値:
複製されたオブジェクト参照

release

public abstract void release(Object obj)
指定されたオブジェクト参照に関連したリソースを解放します。

パラメータ:
obj - リソースを解放する必要があるオブジェクト参照

is_a

public abstract boolean is_a(Object obj,
                             String repository_id)
オブジェクト参照が、指定されたインタフェースのインスタンスであるかどうかを判定します。

パラメータ:
obj - 調査対象のオブジェクト参照
repository_id - 調査対象のインタフェースのリポジトリ ID
戻り値:
オブジェクト参照がインタフェースをサポートしている場合は true

non_existent

public abstract boolean non_existent(Object obj)
オブジェクト参照のサーバオブジェクトが破棄されているかどうかを判定します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
サーバオブジェクトが存在しないことを ORB が正式に認識している場合は true、そうでない場合は false

is_equivalent

public abstract boolean is_equivalent(Object obj,
                                      Object other)
2 つのオブジェクト参照が等価かどうかを判定します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
other - 等価かどうか調べる対象となるオブジェクト参照
戻り値:
2 つのオブジェクトの CORBA が等価の場合 true

hash

public abstract int hash(Object obj,
                         int max)
このオブジェクト参照の ORB 内部識別子 (ハッシュコード) を返します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
max - ORB によって返されるハッシュ値の上限
戻り値:
オブジェクト参照の ORB 内部ハッシュ識別子

request

public abstract Request request(Object obj,
                                String operation)
Dynamic Invocation Interface で使用される Request のインタフェースを作成します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
operation - Request インスタンスを使って呼び出されるオペレーションの名前
戻り値:
生成された Request のインスタンス

create_request

public abstract Request create_request(Object obj,
                                       Context ctx,
                                       String operation,
                                       NVList arg_list,
                                       NamedValue result)
Dynamic Invocation Interface で使用される Request のインタフェースを作成します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
ctx - 使用されるコンテキスト
operation - 呼び出されるオペレーションの名前
arg_list - NVList 形式のオペレーションの引数
result - 結果が格納される、NamedValue としてのコンテナ
戻り値:
作成された Request オブジェクト

create_request

public abstract Request create_request(Object obj,
                                       Context ctx,
                                       String operation,
                                       NVList arg_list,
                                       NamedValue result,
                                       ExceptionList exclist,
                                       ContextList ctxlist)
Dynamic Invocation Interface で使用される Request のインタフェースを作成します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
ctx - 使用されるコンテキスト
operation - 呼び出されるオペレーションの名前
arg_list - NVList 形式のオペレーションの引数
result - 結果が格納される、NamedValue としてのコンテナ
exclist - オペレーションがスローする可能性がある例外のリスト
ctxlist - Request とともに解決し送信される必要があるコンテキスト文字列のリスト
戻り値:
作成された Request オブジェクト

orb

public ORB orb(Object obj)
パラメータに関連した orb への参照を提供します。

パラメータ:
obj - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
関連した orb
関連項目:
portable パッケージに実装されていない機能についてのコメント

get_policy

public Policy get_policy(Object self,
                         int policy_type)
このオブジェクトに適用する、指定された型の Policy オブジェクトを返します。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
policy_type - 取得されるポリシーの型
戻り値:
policy_type パラメータで指定された型の Policy オブジェクト
例外:
BAD_PARAM - この ORB が指定された型をサポートしていないか、あるいはその型のポリシーオブジェクトがこの Object に関連付けられていないために、ポリシー型の値が有効でない場合
関連項目:
portable パッケージに実装されていない機能についてのコメント

get_domain_managers

public DomainManager[] get_domain_managers(Object self)
このオブジェクトの DomainManager を取り出します。これにより、管理サービスやアプリケーションは、ドメインマネージャを取り出せます。したがって、ドメインのメンバである個々のオブジェクトに適用可能なセキュリティとほかのポリシーを取り出せるようになります。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
このオブジェクトを直接囲むドメインマネージャのリスト。各オブジェクトは作成時にデフォルトで 1 つ以上のドメインマネージャに関連付けられるので、このリストでは常に 1 つ以上のドメインマネージャが返される
関連項目:
portable パッケージに実装されていない機能についてのコメント

set_policy_override

public Object set_policy_override(Object self,
                                  Policy[] policies,
                                  SetOverrideType set_add)
渡されたポリシーを、返される新しく作成されたオブジェクト参照と関連付けます。クライアント側のオペレーション呼び出しに適合する特定のポリシーだけを、このオペレーションを使ってオーバーライドできます。他のポリシーをオーバーライドしようとすると、CORBA::NO_PERMISSION 例外がスローされます。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
policies - Policy オブジェクトへの参照のシーケンス
set_add - オブジェクト参照にすでに存在する他のオーバーライドにこれらのポリシーを追加する (ADD_OVERRIDE) のか、あるいはオーバーライドされていないクリーンなオブジェクト参照に追加する (SET_OVERRIDE) のかを示します。
戻り値:
関連した新しいポリシーのある新しいオブジェクト参照
関連項目:
portable パッケージに実装されていない機能についてのコメント

is_local

public boolean is_local(Object self)
このオブジェクトがローカルサーバントによって実装される場合は true を返します。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
このオブジェクトを生成するサーバントがこの Java VM に置かれている場合にのみ true。サーバントがローカルでない場合、あるいは ORB がこの特定のサーバントのローカルスタブをサポートしていない場合は false。is_local() のデフォルトの動作では false を返す

servant_preinvoke

public ServantObject servant_preinvoke(Object self,
                                       String operation,
                                       Class expectedType)
この要求で使用される必要があるサーバントへの Java 参照を返します。servant_preinvoke() はローカルスタブによって呼び出されます。ServantObject オブジェクトが返される場合、そのサーバントフィールドは予想されるオブジェクト型に設定されています (注: オブジェクトは実際のサーバントインスタンスである場合とない場合がある)。ローカルスタブはサーバントフィールドを予想される型にキャストしてから、直接そのオペレーションを呼び出すこともあります。ServantRequest オブジェクトは 1 回の呼び出しに対してだけ有効であり、複数の呼び出しに対しては使用できません。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
operation - オペレーション名が格納されている文字列。オペレーション名は、GIOP 要求で符号化されるオペレーション名に対応する
expectedType - サーバントの予想される型を表す Class オブジェクト。予想される型は、スタブのインタフェースのオペレーションクラスに関連した Class オブジェクト。たとえば、インタフェース Foo のスタブの場合は、FooOperations インタフェースに Class オブジェクトを渡す
戻り値:
ServantObject オブジェクト。メソッドが、セキュリティ、トランザクションなどのためこの最適化をサポートしない場合、このメソッドは null 値を返すことがある。サーバントが予想される型でない場合、このメソッドは null を返す必要がある

servant_postinvoke

public void servant_postinvoke(Object self,
                               ServantObject servant)
servant_postinvoke() は、ローカルサーバントでこのオペレーションが呼び出されたあとで、ローカルスタブによって呼び出されます。このメソッドは、サーバントのメソッドにより例外がスローされた場合でも、servant_preinvoke() が null 以外の値を返した場合に呼び出される必要があります。このため、servant_postinvoke() の呼び出しは、Java の finally 節に置かなければなりません。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
servant - servant_preinvoke() メソッドから返された ServantObject のインスタンス

request

public OutputStream request(Object self,
                            String operation,
                            boolean responseExpected)
request は、引数の整列化のため、OutputStream を取得する目的でスタブによって呼び出されます。スタブはオペレーション名を指定し、応答が予想されるかどうか (つまり、一方向の呼び出しかどうか) を指定する必要があります。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
operation - オペレーション名が格納されている文字列。オペレーション名は、GIOP 要求で符号化されるオペレーション名に対応する
responseExpected - オペレーションが一方向のオペレーションの場合は false、そうでない場合は true
戻り値:
要求引数が整列化される OutputStream
関連項目:
portable パッケージに実装されていない機能についてのコメント

invoke

public InputStream invoke(Object self,
                          OutputStream output)
                   throws ApplicationException,
                          RemarshalException
invoke はオペレーションを呼び出すためにスタブによって呼び出されます。このスタブは、以前に request() 呼び出しによって返された OutputStream を提供します。invoke は整列化された応答が格納される InputStream を返します。例外が発生した場合、invoke は、ユーザ例外状態が非整列化される InputStream が格納されている ApplicationException オブジェクトをスローする場合もあります。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
output - 整列化された引数を格納する OutputStream
戻り値:
input 応答パラメータが非整列化される InputStream
例外:
ApplicationException - 実装がリモートメソッドの一部として定義された例外を (呼び出し時に) スローする場合
RemarshalException - 非整列化が失敗した場合
関連項目:
portable パッケージに実装されていない機能についてのコメント

releaseReply

public void releaseReply(Object self,
                         InputStream input)
releaseReply は、非整列化が完了したときに ORB へ戻される応答ストリームを解放するために、スタブによって任意に呼び出されることがあります。スタブは invoke() または ApplicationException.getInputStream() によって返された InputStream を渡します。また、null 値も releaseReply に渡されることがあり、その場合このメソッドは何も行いません。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
input - invoke() から返される InputStream
関連項目:
portable パッケージに実装されていない機能についてのコメント

toString

public String toString(Object self)
委譲 CORBA オブジェクトの toString() メソッドをオーバーライドする実装を提供します。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
この Delegate オブジェクトに委譲したオブジェクト参照を表す String オブジェクト

hashCode

public int hashCode(Object self)
委譲 CORBA オブジェクトの hashCode() メソッドをオーバーライドする実装を提供します。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
戻り値:
この Delegate オブジェクトに委譲したオブジェクト参照のハッシュコードを表す int

equals

public boolean equals(Object self,
                      Object obj)
委譲 CORBA オブジェクトの equals(java.lang.Object obj) メソッドをオーバーライドする実装を提供します。

パラメータ:
self - この委譲オブジェクトに委譲したオブジェクト参照
obj - 比較対象の Object
戻り値:
objself と等しい場合は true、そうでない場合は false

JavaTM 2
Platform
Std. Ed. v1.4.0

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

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.