名前
FJ_ImplementationRep_lookup_id
形式
#include <orb.h> CORBA_ImplementationDef *FJ_ImplementationRep_lookup_id( FJ_ImplementationRep impl_rep, char *impl_id, CORBA_Environment *env ) ; typedef CORBA_Object CORBA_ImplementationDef;
機能説明
impl_idで指定したインプリメンテーションリポジトリIDに対応するCORBA_ImplementationDefオブジェクトを返します。 CORBA_ImplementationDefオブジェクトはOD_impl_instコマンドで登録されたサーバアプリケーションのインプリメンテーションリポジトリIDです。
本関数はオブジェクトリファレンスを格納する領域を獲得するため、この領域が不要になった時点で、CORBA_Object_release()を使用して領域を解放する必要があります。
Odwin.dllをリンクしたアプリケーションで本関数を実行した場合、インプリメンテーションリポジトリIDを見つけることができず、_idの値が“IDL:FJ/NameDoesntExist:1.0”であるユーザ例外が発生します。
パラメタ
インプリメンテーション情報のオブジェクトリファレンス。
インプリメンテーションリポジトリID。
対象の例外情報が格納されている構造体。
復帰値
正常終了した場合は、impl_idに対応するCORBA_ImplementationDefオブジェクトが返されます。
異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONもしくはCORBA_USER_EXCEPTIONが設定されます。
_majorにCORBA_SYSTEM_EXCEPTIONが設定された場合は、_idと_minorに詳細情報が設定されます。_idと_minorの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。
_majorにCORBA_USER_EXCEPTIONが設定された場合は、_idに詳細情報が設定されます。_idの値と意味は次のとおりです。
IDL:FJ/NameDoesntExist:1.0
impl_idで指定したインプリメンテーションリポジトリIDが見つかりません。