ページの先頭行へ戻る
Interstage Application Server アプリケーション作成ガイド(イベントサービス編)

7.6 コンシューマとサプライヤのオブジェクトリファレンスの獲得

  イベントチャネルに接続する際、自身のオブジェクトを登録します。このオブジェクトの生成方法(コンシューマのオブジェクトの作成例)を以下に示します。


イベントサービスの場合

[Pushモデルのコンシューマのオブジェクト]

_tmpObj  = Orb.resolve_initial_references( "RootPOA" );
POA  rootPOA = POAHelper.narrow( _tmpObj ); 
Servant  svt = new UserServant();
rootPOA.activate_object( svt ); 
_tmpObj  = rootPOA.servant_to_reference( svt ); 
PushConsumer  my_obj = PushConsumerHelper.narrow( _tmpObj );

ノーティフィケーションサービスの場合

[Mixedモデルのコンシューマのオブジェクト]

_tmpObj  = Orb.resolve_initial_references( "RootPOA" );
POA  rootPOA = POAHelper.narrow( _tmpObj ); 
Servant  svt = new UserServant();
rootPOA.activate_object( svt ); 
_tmpObj  = rootPOA.servant_to_reference( svt ); 
PullConsumer  my_obj = PullConsumerHelper.narrow( _tmpObj );

  オブジェクトは、POA.servant_to_referenceまたはPOA.create_referenceなどで作成します。

  各アプリケーションが実装するインタフェースを以下に示します。


イベントサービスの場合

通信モデル

サプライヤ

コンシューマ

Push

org.omg.CosEventComm.PushSupplierPOA

org.omg.CosEventComm.PushConsumerPOA

Pull

org.omg.CosEventComm.PullSupplierPOA

org.omg.CosEventComm.PullConsumerPOA

Mixed

org.omg.CosEventComm.PushSupplierPOA

org.omg.CosEventComm.PullConsumerPOA


ノーティフィケーションサービスの場合

通信モデル

サプライヤ

コンシューマ

Mixed
(any)

org.omg.CosEventComm.PushSupplierPOA

org.omg.CosEventComm.PullConsumerPOA

Mixed
(StructuredEvent)

org.omg.CosNotifyComm.StructuredPushSupplierPOA

org.omg.CosNotifyComm.StructuredPullConsumerPOA