Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]() ![]() |
第1章 C言語インタフェース | > 1.17 イベントサービスインタフェース | > 1.17.3 EventFactoryインタフェース |
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 |
接続モデルとして以下の値を指定します。 |
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サービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。
目次
索引
![]() ![]() |