JavaTM Platform
Standard Ed. 6

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 Platform
Standard Ed. 6

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

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