CosNotifyChannelAdmin_EventChannelFactoryは、NotificationServiceで規定されたファクトリインタフェースです。
データ型のマッピング
当インタフェースで使用するデータ型はC言語では以下のようにマッピングされます。
typedef CORBA_long CosNotifyChannelAdmin_ChannelID; typedef struct { CORBA_unsigned_long _maximum; CORBA_unsigned_long _length; CosNotifyChannelAdmin_ChannelID *_buffer; } CosNotifyChannelAdmin_ChannelIDSeq;
名前
CosNotifyChannelAdmin_EventChannelFactory_create_channel
形式
#include <NotificationService.h> CosNotifyChannelAdmin_EventChannel CosNotifyChannelAdmin_EventChannelFactory_create_channel( CosNotifyChannelAdmin_EventChannelFactory obj, CosNotification_QoSProperties *initial_qos, CosNotification_AdminProperties *initial_admin, CosNotifyChannelAdmin_ChannelID *id, CORBA_Environment *env );
機能説明
initial_qos, initial_adminで指定されたQoSプロパティ項目およびAdminプロパティ項目を持つイベントチャネルを生成し、idにイベントチャネルの識別IDを設定します。QoSプロパティ項目およびAdminプロパティ項目の詳細については、“アプリケーション作成ガイド(イベントサービス編)”の“QoS機能”を参照してください。
このメソッドはオブジェクトリファレンスを格納する領域を獲得するため、この領域が不要になった時点で、CORBA_Object_release()を使用して領域を解放する必要があります。
パラメタ
CORBA_ORB_resolve_initial_references()のidentifierパラメタに“NotificationService”を指定して獲得したオブジェクトリファレンス。
イベントチャネルを生成するQoSプロパティ項目。
イベントチャネルを生成するAdminプロパティ項目。
イベントチャネルの識別IDが設定されます。
例外情報が格納される構造体。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、イベントチャネルのオブジェクトリファレンスを返します。
異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONまたはCORBA_USER_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
ユーザ例外の場合、以下の詳細情報が設定されます。
指定されたQoSプロパティ項目またはその値に誤りがあります。
指定されたAdminプロパティ項目またはその値に誤りがあります。
システム例外の場合、“メッセージ集”の“イベントサービスから通知される例外情報/マイナーコード”および“CORBAサービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。
名前
CosNotifyChannelAdmin_EventChannelFactory_get_all_channels
形式
#include <NotificationService.h> CosNotifyChannelAdmin_ChannelIDSeq * CosNotifyChannelAdmin_EventChannelFactory_get_all_channels( CosNotifyChannelAdmin_EventChannelFactory obj, CORBA_Environment *env );
機能説明
イベントファクトリが管理している、すべてのイベントチャネルの識別IDをシーケンス型で返します。
このメソッドはシーケンス型の領域を獲得するため、この領域が不要になった時点で、CORBA_free()を使用して領域を解放する必要があります。
パラメタ
CORBA_ORB_resolve_initial_references()のidentifierパラメタに“NotificationService”を指定して獲得したオブジェクトリファレンス。
例外情報が格納される構造体。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、イベントファクトリが管理している、すべてのイベントチャネルの識別IDがシーケンス型で復帰します。
異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
システム例外の場合、“メッセージ集”の“イベントサービスから通知される例外情報/マイナーコード”および“CORBAサービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。
名前
CosNotifyChannelAdmin_EventChannelFactory_get_event_channel
形式
#include <NotificationService.h> CosNotifyChannelAdmin_EventChannel CosNotifyChannelAdmin_EventChannelFactory_get_event_channel( CosNotifyChannelAdmin_EventChannelFactory obj, CosNotifyChannelAdmin_ChannelID id, CORBA_Environment *env );
機能説明
idで指定された識別IDを持つイベントチャネルのオブジェクトリファレンスを返します。
このメソッドはオブジェクトリファレンスを格納する領域を獲得するため、この領域が不要になった時点で、CORBA_Object_release()を使用して領域を解放する必要があります。
パラメタ
CORBA_ORB_resolve_initial_references()のidentifierパラメタに“NotificationService”を指定して獲得したオブジェクトリファレンス。
取得するイベントチャネルの識別ID。
例外情報が格納される構造体。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、idで指定された識別IDを持つイベントチャネルのオブジェクトリファレンスが復帰します。
異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONまたはCORBA_USER_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
ユーザ例外の場合、以下の詳細情報が設定されます。
指定されたチャネルは存在しません。
システム例外の場合、“メッセージ集”の“イベントサービスから通知される例外情報/マイナーコード”および“CORBAサービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。