22.9.2 CORBA::ORBのメソッド
-
CORBA::Boolean work_pending();
このメソッドは,ORBに処理待ちの作業がある場合にtrueを返します。
-
static CORBA::TypeCode_ptr create_alias_tc(
const char *repository_id,
const char *type_name,
CORBA::TypeCode_ptr original_type);
この静的メソッドは,指定された型,および名前を持つエイリアスのTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
エイリアスの型の名前
-
original_type
このエイリアスが生成される元の型
-
-
static CORBA::TypeCode_ptr create_array_tc(
CORBA::Ulong length, TypeCode_ptr element_type);
この静的メソッドは,配列のTypeCodeを動的に生成します。
-
length
配列要素の最大数
-
element_type
この配列に格納されている要素の型
-
-
static CORBA::TypeCode_ptr create_enum_tc(
const char *repository_id,
const char *type_name,
const CORBA::EnumMemberSeq& members);
この静的メソッドは,指定された型,およびメンバを持つ,列挙体のTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
列挙体の型の名前
-
members
列挙体メンバの値のリスト
-
-
CORBA::Environment_out env);
このメソッドは,Environmentオブジェクトを生成します。
-
env
新しく生成されたEnvironmentを指すポインタに設定されるリファレンス
-
-
static CORBA::TypeCode_ptr create_exception_tc(
const char *repository_id,
const char *type_name,
const CORBA::StructMemberSeq& members);
この静的メソッドは,指定された型,およびメンバを持つ例外のTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
構造体の型の名前
-
members
構造体メンバの値のリスト
-
-
static CORBA::TypeCode_ptr create_interface_tc(
const char *repository_id, const char *type_name);
この静的メソッドは,指定された型を持つインタフェースのTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
インタフェースの型の名前
-
-
CORBA::Long num, CORBA::NVList_out nvList);
このメソッドは,指定された要素数を持つNVListを生成し,そのリストに対するリファレンスを返します。
-
num
リスト内の要素数
-
nvList
新しく生成されたリストを指すポインタに初期化されます。
-
-
CORBA::NamedValue_out value);
このメソッドはNamedValueオブジェクトを生成します。
-
CORBA::OperationDef_ptr opDefPtr, CORBA::NVList_out nvList);
このメソッドは,指定されたOperationDefオブジェクトの引数リストを生成します。
-
static CORBA::TypeCode_ptr create_recursive_sequence_tc(
CORBA::Ulong bound, CORBA::Ulong offset);
この静的メソッドは,再帰的シーケンスのTypeCodeを動的に生成します。このメソッドの結果は,ほかの型の生成に使用できます。offsetパラメタは,どのTypeCodeがシーケンスの要素を表しているかを判別します。
-
bound
シーケンス要素の最大数
-
offset
現在の要素のタイプコードが生成されたバッファ内の位置
-
-
static CORBA::TypeCode_ptr create_sequence_tc(
CORBA::Ulong bound, CORBA::TypeCode_ptr element_type);
この静的メソッドは,シーケンスのTypeCodeを動的に生成します。
-
bound
シーケンス要素の最大数
-
element_type
このシーケンスに格納されている要素の型
-
-
static CORBA::TypeCode_ptr create_string_tc(
CORBA::Ulong bound);
この静的メソッドは,文字列のTypeCodeを動的に生成します。
-
bound
文字列の最大長
-
-
static CORBA::TypeCode_ptr create_struct_tc(
const char *repository_id,
const char *type_name,
const CORBA::StructMemberSeq& members);
この静的メソッドは,指定された型とメンバを持つ構造体のTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
構造体の型の名前
-
members
構造体メンバの値のリスト
-
-
static CORBA::TypeCode_ptr create_union_tc(
const char *repository_id,
const char *type_name,
CORBA::TypeCode_ptr discriminator_type,
const CORBA::UnionMemberSeq& members);
この静的メソッドは,指定された型,ディスクリミネータ,およびメンバを持つunionのTypeCodeを動的に生成します。
-
repository_id
IDLコンパイラによって生成された識別子,または動的に構築された識別子
-
type_name
unionの型の名前
-
discriminator_type
unionの識別型
-
members
unionメンバの値のリスト
-
-
CORBA::Context_out contextPtr);
このメソッドは,VisiBrokerによって保持されている,プロセスごとのContextのデフォルトを返します。デフォルトのContextは,DIIリクエストを構成する際によく使用されます。詳細については,「22.5 Context」を参照してください。
-
contextPtr
プロパティの値
-
-
CORBA::Request_out req);
このメソッドは,遅延リクエストに対応する応答を待ちます。このメソッドを呼び出す前に,受信されることを待っている応答があるかどうかを判別するには,ORB::poll_next_responseメソッドを使用します。
-
req
応答が得られたリクエスト情報を指すポインタが設定されます。
-
-
ObjectIdList *list_initial_services();
このメソッドは,アプリケーションで使用できるすべてのオブジェクトサービス名のリストを返します。それらのサービスには,ロケーションサービス,インタフェースリポジトリ,およびネームサービスが含まれます。返された名前はORB::resolve_initial_referencesメソッドで,このサービスのトップレベルオブジェクトを取得するのに使用します。
-
CORBA::Object_ptr obj);
このメソッドは,指定されたオブジェクトリファレンスを文字列に変換します。この処理は,CORBAの仕様で「文字列化(stringification)」と呼ばれます。例えば,文字列に変換されたオブジェクトリファレンスをファイルなどに格納できます。ORBインプリメンテーションによって,オブジェクトリファレンスから文字列への変換方法が異なるので,このメソッドはORBメソッドになっています。
-
obj
文字列に変換されるオブジェクトを指すポインタ
-
-
このメソッドは,ORBに処理の実行を指示します。
-
CORBA::Boolean poll_next_response();
遅延リクエストの応答を受信している場合,このメソッドはTRUEを返します。そうでない場合はFALSEを返します。このメソッドを呼び出しても遅延リクエストの応答を待ちません。
-
CORBA::Object_ptr resolve_initial_references(
const char * identifier);
このメソッドは,ORB::list_initial_servicesメソッドによって返された名前と一致するインプリメンテーションオブジェクトを解決します。このメソッドよって返された解決済みオブジェクトは,適切なサーバ型にナロウできます。指定されたサービスが見つからない場合,InvalidName例外が発生します。この節の「ObjectIdList *list_initial_services();」も参照してください。
-
identifier
返されるトップレベルオブジェクトのサービスの名前。識別子の名前は,返されるオブジェクトの名前ではありません。
アドオンされるORBサービスの識別子を次に示します。
・ORBPolicyManager
・PolicyCurrent
・DynAnyFactory
・CodecFactory
・PlCurrent
・RootPOA
・LocationService
・InterfaceRepository
・VisiBrokerInterceptorControl
・NameService
-
-
void send_multiple_requests_deferred(
const CORBA::RequestSeq& req);
このメソッドは,指定されたシーケンス内のすべてのクライアントリクエストを遅延リクエストとして送信します。ORBは,そのオブジェクトインプリメンテーションからの応答待ちをしません。クライアントアプリケーションが,ORB::get_next_responseメソッドを使って各リクエストの応答を取得します。
-
req
送信される遅延リクエストのシーケンス
-
-
void send_multiple_requests_oneway(
const CORBA::RequestSeq& req);
このメソッドは,指定されたシーケンス内のすべてのクライアントリクエストを一方向リクエストとして送信します。一方向リクエストはオブジェクトインプリメンテーションからの応答を生成しないので,ORBはリクエストからの応答を待ちません。
-
req
送信される一方向リクエストのシーケンス
-
-
CORBA::Object_ptr string_to_object(
const char *str);
このメソッドは,オブジェクトを表す文字列をオブジェクトポインタに変換します。なお,その文字列はORB::object_to_stringメソッドを使って生成されたものでなければなりません。
-
str
オブジェクトを表す文字列を指すポインタ
-
-
この静的メソッドは,初期化に使用できるNULL ORBポインタを返します。
-
このメソッドは,ORBに処理の実行を開始させます。ORBはリクエストを受信し,ディスパッチします。この呼び出しはORBがシャットダウンするまでプロセスを続行します。
-
CORBA::ValueFactory register_value_factory(
const char* id, CORBA::ValueFactory factory);
ValueFactoryを登録します。
-
id
ファクトリのリポジトリID
-
factory
登録するValueFactory
-
-
void unregister_value_factory(
const char* id);
ValueFactoryの登録を削除します。
-
id
ファクトリのリポジトリID
-
-
CORBA::ValueFactory lookup_value_factory(
const char* id);
ValueFactoryの登録を検索します。
-
id
ファクトリのリポジトリID
-
-
CORBA::Policy_ptr create_policy(
CORBA::PolicyType type, const CORBA::Any& val);
このメソッドは,指定された初期値で特定のタイプのPolicyオブジェクトを作成するために使用します。サポートしていないポリシーを指定した場合,PolicyError例外が発生します。
-
type
作成されるPolicyオブジェクトのPolicyType
-
val
作成されるPolicyオブジェクトの初期状態を設定するために使われる値
-
-
CORBA::Boolean wait_for_completion=0);
このメソッドは,runメソッドをリターンさせます。すべてのオブジェクトアダプタがシャットダウンされ,そのアダプタ用のメモリが解放されます。