org.omg.DynamicAny

接口
所有超级接口:
DynAnyOperations
所有已知子接口:
DynSequence
所有已知实现类:
_DynSequenceStub

public interface DynSequenceOperations
     
extends DynAnyOperations

DynSequence 对象支持对 IDL 序列的操作。


方法摘要
 DynAny[] get_elements_as_dyn_any()
          返回表示序列元素的 DynAny。
 Any[] get_elements()
          返回序列的元素。
 int get_length()
          返回序列的当前长度。
 void set_elements_as_dyn_any(DynAny[] value)
          使用 DynAny 设置序列的元素。
 void set_elements(Any[] value)
          设置序列的元素。
 void set_length(int len)
          设置序列的长度。
 
从接口 org.omg.DynamicAny.DynAnyOperations 继承的方法
assign, component_count, copy, current_component, destroy, equal, from_any, get_any, get_boolean, get_char, get_double, get_dyn_any, get_float, get_long, get_longlong, get_octet, get_reference, get_short, get_string, get_typecode, get_ulong, get_ulonglong, get_ushort, get_val, get_wchar, get_wstring, insert_any, insert_boolean, insert_char, insert_double, insert_dyn_any, insert_float, insert_long, insert_longlong, insert_octet, insert_reference, insert_short, insert_string, insert_typecode, insert_ulong, insert_ulonglong, insert_ushort, insert_val, insert_wchar, insert_wstring, next, rewind, seek, to_any, type
 

方法详细信息

get_length

int get_length()
返回序列的当前长度。


set_length

void set_length(int len)
                throws InvalidValue
设置序列的长度。增加序列的长度将在尾部添加新元素,同时不影响现有元素的值。新添加的元素按默认方式初始化。如果上一个当前位置是 -1,则增加序列的长度会将当前位置设置为第一个新添加的元素。如果上一个当前位置不是 -1,则该操作对当前位置没有影响。减少序列的长度将从尾部移除元素,同时不影响剩余元素的值。减少序列长度后,新的当前位置用以下方式确定:
  • 如果将序列长度设置为 0,则当前位置被设置为 -1。
  • 如果减少长度前当前位置为 -1,则其仍然为 -1。
  • 如果当前位置指示一个有效元素,而该元素在减少长度后没有被移除,则当前位置保持不变。
  • 如果当前位置指示一个有效元素,但该元素在减少长度后被移除,则将当前位置设置为 -1。

抛出:
InvalidValue - 如果此为有界序列且 len 大于其界限

get_elements

Any[] get_elements()
返回序列的元素。


set_elements

void set_elements(Any[] value)
                  throws TypeMismatch,
                         InvalidValue
设置序列的元素。将 DynSequence 的长度设置为 value 的长度。如果 value 的长度不为 0,则将当前位置设置为 0;如果 value 是长度为 0 的序列,则将当前位置设置为 -1。

抛出:
TypeMismatch - 如果 value 包含一个或多个元素,而这些元素的 TypeCode 不等于 DynSequence 的 TypeCode 元素
InvalidValue - 如果 value 的长度超出有界序列的界限

get_elements_as_dyn_any

DynAny[] get_elements_as_dyn_any()
返回表示序列元素的 DynAny。


set_elements_as_dyn_any

void set_elements_as_dyn_any(DynAny[] value)
                             throws TypeMismatch,
                                    InvalidValue
使用 DynAny 设置序列的元素。将 DynSequence 的长度设置为 value 的长度。如果 value 的长度不为 0,则将当前位置设置为 0;如果 value 是长度为 0 的序列,则将当前位置设置为 -1。

抛出:
TypeMismatch - 如果 value 包含一个或多个元素,而这些元素的 TypeCode 不等于 DynSequence 的 TypeCode 元素
InvalidValue - 如果 value 的长度超出有界序列的界限