22.17.2 PortableServer::ServantLocatorのメソッド
-
PortableServer::Servant preinvoke(
const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter,
const char* operation,Cookie& the_cookie);
このメソッドは,POAが現在アクティブの状態にないオブジェクトへのリクエストを受け取ったときに呼び出されます。このメソッドは,NON_RETAINポリシーとUSE_SERVANT_MANAGERポリシーがあることを前提とします。
ユーザが提供するサーバントマネージャは,oidに指定したオブジェクトに対応する適切なサーバントを探索,および作成する必要があります。
-
oid
到着したリクエストに対応するオブジェクトID
-
adapter
オブジェクトを活性化するPOA
-
operation
サーバントが返されるときにPOAが呼び出すオペレーションの名前
-
the_cookie
サーバントマネージャがあとでpostinvokeメソッドに設定して使用できる不特定の値
-
-
const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter,
const char* operation,
Cookie the_cookie,
PortableServer::Servant the_servant);
このメソッドは,サーバントがリクエストの実行を完了するときに呼び出されます。このメソッドは,POAにNON_RETAINポリシーとUSE_SERVANT_MANAGERポリシーがあることを前提とします。このメソッドは,オブジェクトに対するリクエストの一部とみなされます。つまり,メソッドが正常終了したのにpostinvokeメソッドがシステム例外を出力した場合は,このメソッドの正常リターンはオーバーライドされ,リクエストは例外を発生して終了します。
POAが認識しているサーバントをデストラクトした場合,結果は不定です。
-
oid
到着したリクエストに対応するオブジェクトID
-
adapter
オブジェクトを活性化するPOA
-
operation
サーバントが返されるときにPOAが呼び出すオペレーションの名前
-
the_cookie
サーバントマネージャがpreinvokeメソッドに設定して使用できる不特定の値
-
the_servant
オブジェクトに対応するサーバント
-