クライアントプログラムは,IRのIDLインタフェースを使用して,IR内のオブジェクトについて情報を取得できます。クライアントプログラムはRepositoryにバインドして,コードサンプル16-1に示すメソッドを呼び出せます。このインタフェースの詳細については,マニュアル「Borland Enterprise Server VisiBroker プログラマーズリファレンス」の「インタフェースリポジトリインタフェースとクラス」の記述を参照してください。
class CORBA {
class Repository : public Container {
. . .
CORBA::Contained_ptr lookup_id(
const char * search_id);
CORBA::PrimitiveDef_ptr get_primitive(
CORBA::PrimitiveKind kind);
CORBA::StringDef_ptr create_string(
CORBA::ULong bound);
CORBA::SequenceDef_ptr create_sequence(
CORBA::ULong bound,
CORBA::IDLType_ptr element_type);
CORBA::ArrayDef_ptr create_array(
CORBA::ULong length,
CORBA::IDLType_ptr element_type);
. . .
};
. . .
};
package org.omg.CORBA;
public interface Repository extends Container {
. . .
org.omg.CORBA.Contained lookup_id(string id);
org.omg.CORBA.PrimitiveDef get_primitive(
org.omg.CORBA.PrimitiveKind kind);
org.omg.CORBA.StringDef create_string(long bound);
org.omg.CORBA.SequenceDef create_sequence(long bound,
org.omg.CORBA.IDLType element_type);
org.omg.CORBA.ArrayDef create_array(long length,
org.omg.CORBA.IDLType element_type);
. . .
}