4.4.2
org.omg.CORBA.Objectのメソッド
public org.omg.CORBA.Request
_create_request
(
org.omg.CORBA.Context
ctx
,
java.lang.String
operation
,
org.omg.CORBA.NVList
arg_list
,
org.omg.CORBA.NamedValue
result
)
このメソッドは,指定されたパラメタで初期化される動的起動リクエストを生成します。デフォルトコンテキストの取得については,「
4.5.2 JDKでのORBメソッド
」のget_default_contextメソッドを参照してください。
ctx
動的起動リクエストに使用されるContext
operation
呼び出されるオペレーション名
arg_list
NamedValue項目のリスト。オペレーションに渡される各パラメタには,NamedValueが一つあります。
result
オペレーションの結果
public org.omg.CORBA.Request
_create_request
(
org.omg.CORBA.Context
ctx
,
java.lang.String
operation
,
org.omg.CORBA.NVList
arg_list
,
org.omg.CORBA.NamedValue
result
,
org.omg.CORBA.ExceptionList
exceptions
,
ContextList
contexts
)
このメソッドは,指定パラメタで初期化される動的起動リクエストを生成します。動的起動リクエストの生成には,リクエストで発生する例外のリストが含まれます。デフォルトコンテキストの取得については,「
4.5.2 JDKでのORBメソッド
」のget_default_contextメソッドを参照してください。
ctx
動的起動リクエストに使用されるContext
operation
呼び出されるオペレーション名
arg_list
NamedValue項目のリスト。オペレーションに渡される各パラメタには,NamedValueが一つあります。
result
オペレーションの結果
exceptions
該当するリクエストで発生する例外を表す,Typecodeオブジェクトのリスト
contexts
Contextオブジェクトのリスト。Contextオブジェクトのリストは,コンテキスト名をチェックする型をサポートします。
public int
_hash
(
int
maximum
)
このメソッドは,0からmaximumの範囲の,このオブジェクトのハッシュ値を算出します。常に正の値を返します。
maximum
返される最大ハッシュ値
public boolean
_is_a
(
java.lang.String
repid
)
このメソッドは,指定されたインタフェースをインプリメントしているかどうかを知るためにオブジェクトに問い合わせます。このメソッドは,インプリメンテーションオブジェクトがインタフェースをサポートしている場合,trueを返します。そうでない場合,falseを返します。
repid
要求するインタフェースのリポジトリIDを含む文字列
注
次の例に示すように,指定されたサーバは多重継承で複数のインタフェースを同時にインプリメントできます。そのため,このメソッドの呼び出しは,インプリメンテーションオブジェクトに対する呼び出しとなる場合があります。
module M {
interface
A
{
void opA( );
};
interface
B
{
void opB( );
};
interface
C : A ,B
{
};
};
モジュールMにインタフェースAが指定されている場合(M::A),該当するリポジトリIDは,一般的にIDL:M/A:1.0です。リポジトリIDは,IDLファイルの中で#pragmasを使用して,任意文字列にも設定されます。
public boolean
_is_equivalent
(
org.omg.CORBA.Object
other_object
)
このメソッドは,このオブジェクトのインターオペラブルオブジェクトリファレンス(IOR)を指定されたオブジェクトのIORと比較し,IORが同じ値である場合trueを返します。そうでない場合,falseを返します。同じインプリメンテーションオブジェクトが複数のIORで参照される場合,falseを取得することがあります。
other_object
このオブジェクトと比較されるオブジェクトのリファレンス
public boolean
_non_existent
( )
このメソッドは,インプリメンテーションオブジェクトが活性化されているかどうかを調べるためにインプリメンテーションオブジェクトをpingします。このメソッドは,インプリメンテーションオブジェクトが現在,活性化されている場合(または,サーバを活性化したあとで),falseを返します。そうでない場合,trueを返します。このメソッドは,クライアントのプロキシオブジェクトがほかのサーバに再バインドする原因にはなりません。つまり,強制的にバインドをしますが,強制的に再バインドはしません。サーバにアクセスできない場合は,TRANSIENT例外を返します。vbroker.orb.compliantExceptionsプロパティをfalseに設定すると,例外ではなくtrueを返します。これによって,下位互換性が保たれます。
リバインドポリシーがVB_TRANSPARENTとVB_NOTIFY_REBINDの場合に,クライアントがサーバに対して通信障害を検知した状態で,同一リファレンスを使用してorg.omg.CORBA.Object._non_existent( )を発行すると,暗黙的な接続を試みずにTRANSIENT例外が発生します。この状態で再接続による確認を行うためには,org.omg.CORBA.Object._non_existent( )以外のユーザメソッドを使用してください。
public org.omg.CORBA.Request
_request
(
java.lang.String
operation
)
このメソッドは,空の動的起動リクエストを生成します。オペレーションのINパラメタおよびINOUTパラメタの型と値,OUTパラメタの型,およびリターン値の型は,リクエスト送信前に初期化する必要があります。オペレーションによるユーザ例外が発生する場合は,ユーザ例外のタイプコードのリストをリクエスト送信前に初期化する必要があります。コンテキストを使用する場合は,コンテキストリストをリクエスト送信前に初期化する必要があります。動的起動リクエストの初期化と送信の詳細については,「
5.21 Request
」を参照してください。
operation
呼び出されるオペレーション名