JavaTM 2
Platform
Std. Ed. v1.4.0

org.omg.PortableServer
クラス ServantLocatorPOA

java.lang.Object
  |
  +--org.omg.PortableServer.Servant
        |
        +--org.omg.PortableServer.ServantLocatorPOA
すべての実装インタフェース:
InvokeHandler, ServantLocatorOperations, ServantManagerOperations

public abstract class ServantLocatorPOA
extends Servant
implements ServantLocatorOperations, InvokeHandler

POA に NON_RETAIN ポリシーが指定されているときは、サーバントマネージャとして ServantLocator が使用されます。POA はこのサーバントマネージャが返すサーバントが 1 つの要求だけに使用されることを認識しているため、サーバントマネージャのオペレーションに補足情報を提供でき、サーバントマネージャのオペレーションのペアは連携して ServantActivator とは異なる処理を実行できる場合があります。POA が preinvoke によって返されたサーバントに対するオペレーション呼び出しを実行した直後に ServantLocator インタフェースを使用したときは、そのサーバントに対して postinvoke を呼び出し、特に ObjectId 値と Servant 値をパラメータとして渡します。この機能は、POA に関連付けられたオブジェクトの各要求が強制的にサーバントマネージャを介して行われるようにする場合に使用されます。


コンストラクタの概要
ServantLocatorPOA()
           
 
メソッドの概要
 String[] _all_interfaces(POA poa, byte[] objectId)
          ORB がサーバントから完全な型情報を取得するために使用します。
 OutputStream _invoke(String $method, InputStream in, ResponseHandler $rh)
          ORB により呼び出されて要求をサーバントにディスパッチします。
 ServantLocator _this()
           
 ServantLocator _this(ORB orb)
           
 
クラス org.omg.PortableServer.Servant から継承したメソッド
_default_POA, _get_delegate, _get_interface_def, _is_a, _non_existent, _object_id, _orb, _poa, _set_delegate, _this_object, _this_object
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース org.omg.PortableServer.ServantLocatorOperations から継承したメソッド
postinvoke, preinvoke
 

コンストラクタの詳細

ServantLocatorPOA

public ServantLocatorPOA()
メソッドの詳細

_invoke

public OutputStream _invoke(String $method,
                            InputStream in,
                            ResponseHandler $rh)
インタフェース InvokeHandler の記述:
ORB により呼び出されて要求をサーバントにディスパッチします。ORB は、メソッド名、整列化された引数が格納された InputStream、および適切な応答を構築するためにサーバントが使用する ResponseHandler を渡します。このメソッドでは、CORBA SystemException だけがスローされます。このメソッドは、整列化された応答を格納する ResponseHandler により作成された OutputStream を返す必要があります。サーバントは、メソッド呼び出しの有効期間内に ResponseHandler への参照を保持する必要があります。サーバントの動作は次のように定義されます。

1. 正しいメソッドを定義し、InputStream からのパラメータを非整列化する

2. メソッド実装を呼び出す

3. ユーザ例外がない場合、ResponseHandler を使用して通常の応答を作成する

4. ユーザ例外が発生した場合、ResponseHandler を使用して例外応答を作成する

5. ResponseHandler によって返された OutputStream に応答を整列化する

6. OutputStream を ORB へ返す

定義:
インタフェース InvokeHandler 内の _invoke
パラメータ:
$method - メソッド名
in - 整列化された引数を格納する InputStream
$rh - 適切な応答を作成するためにサーバントが使用する ResponseHandler
戻り値:
整列化された応答を格納する ResponseHandler によって作成される OutputStream

_all_interfaces

public String[] _all_interfaces(POA poa,
                                byte[] objectId)
クラス Servant の記述:
ORB がサーバントから完全な型情報を取得するために使用します。

定義:
クラス Servant 内の _all_interfaces
戻り値:
このオブジェクトの型情報のリスト

_this

public ServantLocator _this()

_this

public ServantLocator _this(ORB orb)

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.