Module  java.corba
软件包  org.omg.CORBA

Class NVList



  • public abstract class NVList
    extends Object
    包含NamedValue对象的可修改列表。

    NVList使用如下:

    • 描述动态调用接口和动态骨架接口中Request对象的参数
    • 来描述Context对象中的上下文值

    每个NamedValue对象包括以下内容:

    • 一个名字,它是一个String对象
    • 一个值,作为一个Any对象
    • 参数模式标志

    可以使用以下ORB方法之一创建NVList对象:

    1. org.omg.CORBA.ORB.create_list
        org.omg.CORBA.NVList nv = orb.create_list(3); 
      变量nv表示新创建的NVList对象。 这个论证是对于orb的内存管理提示,并不意味着列表的实际长度。 例如,如果要在请求中使用NVList对象,并且正在调用的方法需要三个参数,则可以通过向方法create_list提供3来优化。 请注意,新的NVList不一定有3的长度; 例如,它的长度可能是2或4。 还要注意,您可以将任意数量的NamedValue对象添加到此列表中,而不管其原始长度如何。
    2. org.omg.CORBA.ORB.create_operation_list
        org.omg.CORBA.NVList nv = orb.create_operation_list(myOperationDef); 
      变量nv表示新创建的NVList对象,其中包含对给定的OperationDef对象中描述的方法的参数的描述。

    NVList类中的方法都处理了列表中的NamedValue对象。 有三种方法用于添加NamedValue对象,一种用于获取列表中的NamedValue对象的计数的方法,用于在给定索引处检索NamedValue对象的方法,以及用于在给定索引处移除NamedValue对象的方法。

    从以下版本开始:
    JDK1.2
    另请参见:
    RequestServerRequestNamedValueContext
    • 构造方法摘要

      构造方法  
      Constructor 描述
      NVList​()  
    • 方法摘要

      所有方法  接口方法  抽象方法 
      Modifier and Type 方法 描述
      abstract NamedValue add​(int flags)
      创建一个新的 NamedValue对象,并使用给定的标志进行初始化,并将其添加到该 NVList对象的末尾。
      abstract NamedValue add_item​(String item_name, int flags)
      创建一个新的 NamedValue对象,使用给定的名称和标志进行初始化,并将其添加到此 NVList对象的末尾。
      abstract NamedValue add_value​(String item_name, Any val, int flags)
      创建一个新的 NamedValue对象,该对象使用给定的名称,值和标志进行初始化,并将其添加到此 NVList对象的末尾。
      abstract int count​()
      返回的数量 NamedValue已经加入到这一对象 NVList对象。
      abstract NamedValue item​(int index)
      检索给定索引中的 NamedValue对象。
      abstract void remove​(int index)
      删除给定索引处的 NamedValue对象。
    • 构造方法详细信息

      • NVList

        public NVList​()
    • 方法详细信息

      • count

        public abstract int count​()
        返回的数量 NamedValue已经加入到这一对象 NVList对象。
        结果
        一个 int表示 NamedValue对象在这 NVList
      • add

        public abstract NamedValue add​(int flags)
        创建一个新的NamedValue对象,并使用给定的标志进行初始化,并将其添加到此NVList对象的末尾。 该标志可以是以下参数传递模式中的任一个: ARG_IN.valueARG_OUT.value ,或ARG_INOUT.value
        参数
        flags - 参数模式标志之一
        结果
        新创的 NamedValue对象
      • add_item

        public abstract NamedValue add_item​(String item_name,
                                            int flags)
        创建一个新的NamedValue对象,使用给定的名称和标志进行初始化,并将其添加到此NVList对象的末尾。 该标志可以是以下参数传递模式中的任一个: ARG_IN.valueARG_OUT.value ,或ARG_INOUT.value
        参数
        item_name - 新的 NamedValue对象的名称
        flags - 参数模式标志之一
        结果
        新创的 NamedValue对象
      • add_value

        public abstract NamedValue add_value​(String item_name,
                                             Any val,
                                             int flags)
        创建一个新的 NamedValue对象,该对象使用给定的名称,值和标志进行初始化,并将其添加到此 NVList对象的末尾。
        参数
        item_name - 新的 NamedValue对象的名称
        val -一个 Any包含该值的新对象 NamedValue对象
        flags -一个以下参数传递模式: ARG_IN.valueARG_OUT.value ,或 ARG_INOUT.value
        结果
        新创建的 NamedValue对象
      • item

        public abstract NamedValue item​(int index)
                                 throws Bounds
        检索给定索引的 NamedValue对象。
        参数
        index - 所需的NamedValue对象的索引,它必须在零和列表的长度减1之间。 第一项是索引零。
        结果
        给定索引的 NamedValue对象
        异常
        Bounds - 如果索引大于或等于 NamedValue对象的数量
      • remove

        public abstract void remove​(int index)
                             throws Bounds
        在给定索引处删除NamedValue对象。 请注意,删除之后的所有NamedValue对象的索引向下移一。
        参数
        index - 要删除的NamedValue对象的索引,它必须在零和列表的长度减1之间。 第一项是索引零。
        异常
        Bounds - 如果索引大于或等于列表中的 NamedValue对象数