4.5.2 JDKでのORBメソッド
-
public TypeCode create_abstract_interface_tc(
String id, String name)
IDLの抽象インタフェースのTypeCodeオブジェクトを生成して返します。
-
id
抽象インタフェース型の論理ID
-
name
抽象インタフェース型の名前
-
-
abstract public org.omg.CORBA.TypeCode create_alias_tc(
java.lang.String repository_id,
java.lang.String type_name,
org.omg.CORBA.TypeCode original_type)
このメソッドは,IDLのaliasに対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
original_type
エイリアスを付けられた型
-
-
abstract public org.omg.CORBA.Any create_any( )
このメソッドは,NULLタイプコードを持つ空のAnyオブジェクトを生成します。
-
public static org.omg.CORBA.TypeCode create_array_tc(
int bound, TypeCode element_type)
この静的メソッドは,配列に対してTypeCodeを動的に生成します。
-
bound
配列要素の最大数
-
element_type
配列が格納している要素の型
-
-
abstract public org.omg.CORBA.TypeCode create_array_tc(
int length, org.omg.CORBA.TypeCode element_type)
このメソッドは,IDLの配列に対応するTypeCodeを生成して返します。
-
length
配列の長さ
-
element_type
配列に含まれる要素の型
-
-
public abstract ContextList create_context_list( )
このメソッドは,空のContextListを生成して返します。
-
public org.omg.CORBA.DynAny create_dyn_any(
org.omg.CORBA.Any value)
指定した値で初期化したDynAnyオブジェクトを作成します。
- 注
-
DynAnyオブジェクトは,オペレーションリクエストおよびDIIリクエストのパラメタとしては使用できません。また,ORB.object_to_stringメソッドで外部化することもできません。詳細については,「5.6 DynAny」を参照してください。
-
value
該当するオブジェクトの初期化に使用するAnyオブジェクト
-
abstract public org.omg.CORBA.TypeCode create_enum_tc(
java.lang.String repository_id,
java.lang.String type_name,
java.lang.String members[ ])
このメソッドは,IDLの列挙体に対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
members
型のメンバを定義する文字列の配列
-
-
abstract public org.omg.CORBA.Environment create_environment( )
このメソッドは,空のEnvironmentを生成して返します。
-
abstract public org.omg.CORBA.TypeCode create_exception_tc(
java.lang.String repository_id,
java.lang.String type_name,
org.omg.CORBA.StructMember members[ ])
このメソッドは,IDLのexceptionに対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
members
型のメンバを定義する文字列の配列
-
-
abstract public org.omg.CORBA.TypeCode create_interface_tc(
java.lang.String repository_id, java.lang.String type_name)
このメソッドは,IDLのinterfaceに対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
-
abstract public org.omg.CORBA.NVList create_list(
int length)
このメソッドは,指定された長さのNVListを生成して返します。NVListの詳細については,「5.19 NVList」を参照してください。
-
length
生成されるリストの長さ
-
-
abstract public org.omg.CORBA.NamedValue create_named_value(
java.lang.String name, org.omg.CORBA.Any value, int flags)
このメソッドは,動的起動インタフェースの新規NamedValueを生成して返します。
-
name
NamedValue名
-
value
NamedValueの値
-
flags
NamedValueのフラグ:IN,OUT,またはINOUT
-
-
abstract public org.omg.CORBA.NVList create_operation_list(
org.omg.CORBA.OperationDef operationDef)
このメソッドは,動的起動インタフェースリクエストで使用される新規NVListを生成して返します。
-
operationDef
指定されなければならないオペレーションの記述
-
-
public org.omg.CORBA.Policy create_policy(
int type,
org.omg.CORBA.Any val)
throws
org.omg.CORBA.PolicyError
このメソッドは,指定した初期状態を持つ指定した型のポリシーオブジェクトを作成します。ポリシーオブジェクトの作成に失敗した場合,PolicyError例外が発生します。
-
type
作成するポリシーオブジェクトの型
-
val
作成するポリシーオブジェクトの初期状態を設定するための値
-
-
abstract public org.omg.CORBA.TypeCode
create_recursive_sequence_tc(int length, int offset)
このメソッドは,IDLのsequenceに対応するTypeCodeを生成して返します。
-
length
生成される列の長さ。0の場合,アンバウンデッドシーケンスであることを示します。
-
offset
タイプコード(リカーシブ)定義へのオフセット
-
-
abstract public org.omg.CORBA.TypeCode create_sequence_tc(
int length, org.omg.CORBA.TypeCode element_type)
このメソッドは,IDLのsequenceに対応するTypeCodeを生成して返します。
-
length
生成される列の長さ。0の場合,アンバウンデッドシーケンスであることを示します。
-
element_type
シーケンスに含まれる要素の型
-
-
abstract public org.omg.CORBA.TypeCode create_string_tc(
int length)
このメソッドは,IDLのStringに対応するTypeCodeを生成して返します。
-
length
生成される文字列の長さ。0の場合,アンバウンデッドstringであることを示します。
-
-
abstract public org.omg.CORBA.TypeCode create_struct_tc(
java.lang.String repository_id,
String type_name,
org.omg.CORBA.StructMember members[ ])
このメソッドは,IDLのstructに対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
members
型のメンバを定義する構造体の配列
-
-
abstract public org.omg.CORBA.TypeCode create_union_tc(
java.lang.String repository_id,
java.lang.String type_name,
org.omg.CORBA.TypeCode discriminator_type,
org.omg.CORBA.UnionMembers members[ ])
このメソッドは,IDLのunionに対応するTypeCodeを生成して返します。
-
repository_id
IDLで型を指定するリポジトリID
-
type_name
アンスコープ型名
-
discriminator_type
ディスクリミネータの型。ディスクリミネータは,switch文で使用される型です。
-
members
型のメンバを定義する構造体の配列
-
-
public TypeCode create_value_box_tc(
String id,
String name,
TypeCode boxed_type)
IDL値ボックスのTypeCodeオブジェクトを生成して返します。
-
id
値型の論理ID
-
name
値型の名前
-
boxed_type
型のTypeCode
-
-
abstract public org.omg.CORBA.TypeCode create_wstring_tc(
int length)
このメソッドは,IDL wString,またはUnicode文字列に対応するTypeCodeを生成して返します。
ルートコンテキストに対して一度もリクエストが実行されていない状態で,nameservに対してlist_all_rootsメソッドを呼び出した場合,戻り値であるNamingContext[ ]の要素にルートコンテキストではなく,nullが入ります。
-
length
生成される文字列の長さ。0の場合,アンバウンデッドstringであることを示します。
負数を指定しても,BAD_PARAM例外は発生しません。引数が負数でないことを確認する処理を入れてください。
-
-
abstract public org.omg.CORBA.Context get_default_context( )
このメソッドは,グローバルデフォルトContextを返します。デフォルトコンテキストは共有リソースであるため,デフォルトコンテキストの同期を取ってください。
-
abstract public org.omg.CORBA.Request get_next_response( )
このブロッキングメソッドは,遅延されたオペレーションリクエストへの応答ができるまで待ちます。完了したRequestを返します。send_multiple_requests_deferredメソッドを参照してください。
-
abstract public org.omg.CORBA.TypeCode get_primitive_tc(
TCKind kind)
このメソッドは,型に対応する基本タイプコードを返します。kindが範囲外,または基本データ型用でないと,org.omg.CORBA.BAD_PARAM例外が発生します。
-
kind
TCKindに定義されたタイプコードの種類
-
-
Strings[ ] args, Properties props)
このメソッドは,使用するORBをアプリケーションで初期化し,ORBの新しいインスタンスを返します。
-
args
プログラムに渡すコマンドラインパラメタ
-
props
ORBの動作をカスタマイズするために設定できるプロパティ
-
-
public static ORB init(
Applet app, Properties props)
このメソッドは,使用するORBをアプレットで初期化し,ORBの新しいインスタンスを返します。
-
app
ORBの該当するインスタンスと対応づけるアプレット
-
props
ORBの動作をカスタマイズするために設定できるプロパティ
-
-
abstract public java.lang.String[ ] list_initial_services( )
このメソッドは,最初にプロセスで使用できる任意のオブジェクトサービス名のリストを返します。サービスには,ロケーションサービス,インタフェースリポジトリ,またはネームサービスがあります。
-
abstract public java.lang.String object_to_string(
org.omg.CORBA.Object obj)
このメソッドは,オブジェクトリファレンスをStringに変換して返します。Stringはサーバが存続している間有効です。または,インプリメンテーションが活性化デーモンで登録されている場合,登録および活性化デーモンが存続している間有効です。このメソッドは,文字列化したIORを返します。
-
obj
変換されるオブジェクトリファレンス
-
-
メインスレッドから呼び出された場合,このメソッドは作業単位を一つ実行します。そうでない場合は,何も実行しません。
メインスレッドが設定されていない場合,このオペレーションは,呼び出し元スレッドをメインスレッドとみなします。呼び出し元スレッドがメインスレッドとみなされるのは,perform_workの存続時間の間だけです。work_pendingオペレーションとperform_workオペレーションは,ORBなどのアクティビティの中でメインスレッドを多重化するためのポーリングループを記述するのに使用できます。
-
abstract public boolean poll_next_response( )
このメソッドは,遅延されたオペレーションリクエストへの応答ができる場合にtrueを返します。そうでない場合,falseを返します。send_multiple_requests_deferredメソッドも参照してください。
-
abstract public org.omg.CORBA.Object resolve_initial_references(
java.lang.String identifier)
throws
org.omg.CORBA._ORB.InvalidName
このメソッドは,list_initial_servicesメソッドによって,該当するインプリメンテーションオブジェクトに返される名前の一つを分析し,得られたオブジェクトを返します。このオブジェクトは特定のサーバの型にナロウイングできます。指定された名前が見つからない場合,org.omg.CORBA.InvalidName例外が発生します。
-
identifier
識別子はサービス名で,最初のオブジェクトリファレンスを分析するために使用されます。識別子は,(Helper.bindメソッドで指定される)オブジェクト名ではありません。
次のどれかを指定した場合に,StringIndexoutOfBoundsException例外が発生します。
(1)空文字列("")
(2)"V"
(3)"VB"
ORBで提供されるイニシャルサービスのリストがあります。これらのサービスで,プログラムはORBの内部機能にアクセスできるようになります。これらの機能はresolve_initial_referencesメソッドで使用できます。「4.4.4 VisiBrokerでのObjectのメソッドの継承」の_resolve_referenceメソッドも参照してください。
アドオンとしてORBから提供されるイニシャルサービスには,インタフェースリポジトリ,ハンドラレジストリ,3種類のインタセプタサービス,2種類のアンタイプドオブジェクトラッパーサービス,およびURLネーミング(Webネーミング)があります。次にアドオンサービスの詳細を示します。
-
-
このオペレーションは,VisiBroker ORBに内部関数を実行するための実行リソースを提供します。メインスレッドモデルを使用している場合は,メインスレッドが処理リクエストを発行します。メインスレッドが設定されていない場合は,このオペレーションは,呼び出し元スレッドをメインスレッドとみなします。このオペレーションは,ORBが終了するまで実行を抑止します。
-
abstract public void send_multiple_requests_deferred(
org.omg.CORBA.Request reqs[ ])
このノンブロッキングメソッドは,複数のオペレーションリクエストを送信します。リターン値は,poll_next_response,およびget_next_responseメソッドを使用して取得できます。
-
reqs
オペレーションリクエスト
-
-
abstract public void send_multiple_requests_oneway(
org.omg.CORBA.Request reqs[ ])
このメソッドは,複数の一方向オペレーションリクエストを送信します。リターン値は,一方向リクエストでは提供されません。
-
reqs
活性化されるサーバのインプリメンテーションオブジェクト
-
-
abstract public org.omg.CORBA.Object string_to_object(
java.lang.String ior)
このメソッドは,Stringをオブジェクトリファレンスに変換します。返されるObjectは特定のインタフェースにナロウイングされます。iorパラメタがローカルアドレススペースのインプリメンテーションオブジェクトを参照する場合,結果オブジェクトは,インプリメンテーションオブジェクトの直接ポインタリファレンスとなります。iorパラメタが不当であると,org.omg.CORBA.INV_OBJREF例外,もしくはorg.omg.CORBA.BAD_PARAM例外が発生します。
-
ior
object_to_stringメソッドで事前に生成されたインターネットオブジェクトリファレンス
-
-
public boolean work_pending( )
このメソッドは,ORBがメインスレッドによる処理を必要とする場合はtrueを返し,必要としない場合はfalseを返します。