モジュール java.corba
パッケージ org.omg.CORBA

クラスNamedValue



  • public abstract class NamedValue
    extends Object
    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メソッドを使用します。

    導入されたバージョン:
    JDK1.2
    関連項目:
    Any, ARG_IN, ARG_INOUT, ARG_OUT
    • コンストラクタの詳細

      • NamedValue

        public NamedValue​()
    • メソッドの詳細

      • name

        public abstract String name​()
        このNamedValueオブジェクトの名前を取得します。
        戻り値:
        このNamedValueオブジェクトの名前を表すStringオブジェクト
      • value

        public abstract Any value​()
        このNamedValueオブジェクトの値を取得します。
        戻り値:
        このNamedValueオブジェクトの値を含むAnyオブジェクト
      • flags

        public abstract int flags​()
        このNamedValueオブジェクトの引数モード・フラグを取得します。
        戻り値:
        このNamedValueオブジェクトの引数モードを表すint