4.12.2 PortableServer.ServantActivatorのメソッド
-
byte[ ] oid,
org.omg.PortableServer.POA adapter,
org.omg.PortableServer.Servant serv,
boolean cleanup_in_progress,
boolean remaining_activations)
このメソッドは,oidで指定したオブジェクトのサーバントを非活性化するときに,adapterに指定したPOAによって呼び出されます。このメソッドは,RETAINポリシーとUSE_SERVANT_MANAGERポリシーがあることを前提とします。
-
oid
非活性化するサーバントを持つオブジェクトのオブジェクトID
-
adapter
該当するオブジェクトが活性化していたスコープを持つPOA
-
serv
非活性化するサーバント
-
cleanup_in_progress
このパラメタにTrueを設定した場合は,etherealize_objectsパラメタにTrueを設定したdeactivateメソッドまたはdestroyメソッドを呼び出したときに,このメソッドが呼び出されます。このパラメタにTrueを設定しない場合は,それ以外の理由でこのメソッドが呼び出されます。
-
remaining_activations
指定したサーバントが,adapterで指定したPOAの他オブジェクトに対応づけられている場合はTrueを設定し,それ以外の場合はFALSEを設定します。
-
-
org.omg.PortableServer.Servant incarnate(
byte[ ] oid, org.omg.PortableServer.POA adapter)
throws
ForwardRequest
このメソッドは,oidに指定した非アクティブ状態のオブジェクトへのリクエストを受け取ったときにPOAによって呼び出されます。このメソッドは,RETAINポリシーとUSE_SERVANT_MANAGERポリシーがあることを前提とします。
このメソッドを使用するためには,指定したオブジェクトに対応する適当なサーバントを探索および作成するサーバントマネージャのインプリメンテーションを,ユーザが提供します。このメソッドが返すサーバントは,アクティブオブジェクトマップにも登録されます。以後,アクティブなオブジェクトに対するリクエストは,サーバントマネージャを呼び出すことなく直接そのオブジェクトに対応づけられたサーバントに渡されます。
このメソッドが,すでにほかのオブジェクトに対して活性化しているサーバントを返す場合と,POAにUNIQUE_IDポリシーがある場合,OBJ_ADAPTER例外が発生します。また,このメソッドではForwardRequest例外を発生させることができます。ForwardRequest例外については,「4.15 PortableServer.ForwardRequest」を参照してください。
-
oid
活性化するサーバントを持つオブジェクトのオブジェクトID
-
adapter
オブジェクトを活性化するスコープを持つPOA
-