Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第1章 C言語インタフェース> 1.17 イベントサービスインタフェース> 1.17.3 EventFactoryインタフェース

1.17.3.2 EventFactory_create_channel()

名前

  EventFactory_create_channel

形式

  #include  <EventService.h>
  CosEventChannelAdmin_EventChannel
       EventFactory_create_channel(
              EventFactory                obj,
              CORBA_string                key,
              EventFactory_Option         *data,
              EventFactory_EventProperty  *property,
              CORBA_boolean               *create,
              CORBA_Environment           *env );

  typedef struct {
        CORBA_long                        max_queuing; 
        CORBA_long                        life_time; 
        EventFactory_Model                model; 
  } EventFactory_Option;

  typedef struct EventFactory_Property{
        CORBA_string                      name;
        CORBA_any                         value;
  } EventFactory_Property;

  typedef struct {
        CORBA_unsigned_long               _maximum;
        CORBA_unsigned_long               _length;
        struct EventFactory_Property      *_buffer;
  } EventFactory_EventProperty;

機能説明

 イベントチャネルを生成し、生成したイベントチャネルのオブジェクトリファレンスを返します。本メソッドは、生成するチャネルに対してホスト名、ポート番号を変更する場合に使用します。
 objに指定するオブジェクトリファレンスは、CORBA_ORB_resolve_initial_references()identifierパラメタに以下の値を指定して獲得します。

 EventFactory_ObjectId_Factory

 keyには、コンシューマ/サプライヤで共通のキーワードを指定します。共通のキーワードを指定することにより同じイベントチャネルを示すオブジェクトリファレンスが返されます。イベントチャネルがすでに生成されている場合、dataおよびpropertyパラメタの値は無視されます。

 EventFactory_Option構造体の各メンバには、以下の値を設定します。

メンバ

設定値

max_queuing

最大データ蓄積数。EventFactory_ES_DEFAULT_VALUEを指定した場合、イベントサービスの構成情報の設定で指定した“イベントチャネルに蓄積できるイベントデータ数の最大値”の値を使用します。

life_time

データ保持時間(秒)。EventFactory_ES_DEFAULT_VALUEを指定した場合、イベントサービスの構成情報の設定で指定した“蓄積したイベントデータの生存時間(秒)”の値を使用します。0を指定した場合、タイムアウト監視は行いません。

model

接続モデルとして以下の値を指定します。
EventFactory_ModelAny    接続時に決定
EventFactory_ModelPush   Pushモデル
EventFactory_ModelPull   Pullモデル
EventFactory_ModelMixed   Mixedモデル

 propertyには、以下の値を指定します。なお、無効なnameが指定された場合、該当レコードは無効となります。また、HostNameとPortNumberのどちらか一方が設定されている場合、指定されたレコードは無効となります。

メンバ(name)

データ型(value)

設定値

HostName

string

ホスト名(64文字以内)、またはIPアドレスを指定します。

PortNumber

unsigned short

ポート番号を指定します

 createには、イベントチャネルが生成された場合はCORBA_TRUEが、すでに存在した場合はCORBA_FALSEが設定されます。
 本メソッドは、オブジェクトリファレンスを格納する領域を獲得するため、この領域が不要になった時点で、CORBA_Object_release()を使用して領域を解放する必要があります。

復帰値

 正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、生成されたイベントチャネルのオブジェクトリファレンスが返されます。
 異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
 システム例外の場合、“メッセージ集”の“イベントサービスから通知される例外情報/マイナーコード”および“CORBAサービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。

注意事項


目次 索引 前ページ次ページ

Copyright 2005 FUJITSU LIMITED