|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--org.omg.CORBA.NamedValue
引数と戻り値を記述するために DII と DSI で使うオブジェクトです。また、NamedValue
オブジェクトを Context
オブジェクトルーチンで使うと、プロパティの名前と値のリストを渡すことができます。
次に、NamedValue
オブジェクトに格納される内容を示します。
NamedValue
オブジェクトを要求に対する引数を記述するために使うと、名前は記述された操作中の OMG IDL インタフェース定義で指定された引数識別子になる
Any
オブジェクト
ARG_IN.value
ARG_OUT.value
ARG_INOUT.value
NamedValue
オブジェクトがパラメータや戻り値ではなく Context
オブジェクト内のプロパティを表す場合
NamedValue
クラスには 3 つのメソッドがあります。これらのメソッドはそのフィールドにアクセスします。次に、NamedValue
オブジェクトを作成し、そのオブジェクトのフィールドにアクセスするコードを示します。
ORB orb = ORB.init(args, null); String s = "argument_1"; org.omg.CORBA.Any myAny = orb.create_any(); myAny.insert_long(12345); int in = org.omg.CORBA.ARG_IN.value; org.omg.CORBA.NamedValue nv = orb.create_named_value( s, myAny, in); System.out.println("This nv name is " + nv.name()); try { System.out.println("This nv value is " + nv.value().extract_long()); System.out.println("This nv flag is " + nv.flags()); } catch (org.omg.CORBA.BAD_OPERATION b) { System.out.println("extract failed"); }
このコードを main
メソッドに含めた場合、出力は次のようになります。
This nv name is argument_1 This nv value is 12345 This nv flag is 1
ただし、value
メソッドは Any
オブジェクトを返します。Any
オブジェクトに格納されている long
をアクセスするには、extract_long
メソッドを使います。
Any
,
ARG_IN
,
ARG_INOUT
,
ARG_OUT
コンストラクタの概要 | |
NamedValue()
|
メソッドの概要 | |
abstract int |
flags()
この NamedValue オブジェクトの引数モードフラグを取得します。 |
abstract String |
name()
この NamedValue オブジェクトの名前を取得します。 |
abstract Any |
value()
この NamedValue オブジェクトの値を取得します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public NamedValue()
メソッドの詳細 |
public abstract String name()
NamedValue
オブジェクトの名前を取得します。NamedValue
オブジェクトの名前を表す String
オブジェクトpublic abstract Any value()
NamedValue
オブジェクトの値を取得します。NamedValue
オブジェクトの値が格納されている Any
オブジェクトpublic abstract int flags()
NamedValue
オブジェクトの引数モードフラグを取得します。NamedValue
オブジェクトの引数モードを表す int
値
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.