JavaTM 2 Platform
Standard Ed. 6

org.omg.DynamicAny
類別 _DynValueStub

java.lang.Object
  繼承者 org.omg.CORBA.portable.ObjectImpl
      繼承者 org.omg.DynamicAny._DynValueStub
所有已實作的介面:
Serializable, Object, IDLEntity, DynAny, DynAnyOperations, DynValue, DynValueCommon, DynValueCommonOperations, DynValueOperations

public class _DynValueStub
extends ObjectImpl
implements DynValue

DynValue 物件支持 IDL non-boxed value 型別的操作。DynValue 介面可表示 null 和非 null 兩種值型別。對於表示非 null 值型別的 DynValue,DynValue 的元件由該值型別的公共和專有成員組成,包括那些按照定義的順序從具體基本值型別繼承的成員。表示 null 值型別的 DynValue 沒有元件,其當前位置為 -1。

警告:不加區別地更改專有值型別成員的內容將導致值型別實作因違反內部約束而破壞。提供對專有成員的存取是為了支持 ORB 橋接和除錯之類別的活動,不應使用該權限任意違反值型別的封裝。


欄位摘要
static Class _opsClass
           
 
建構子摘要
_DynValueStub()
           
 
方法摘要
 String[] _ids()
          獲得包含此 ObjectImpl 物件所支持的存儲資源庫標識符的字元串陣列。
 void assign(DynAny dyn_any)
          使用與另一個 DynAny 物件有關聯的值初始化與 DynAny 物件有關聯的值。
 int component_count()
          返回 DynAny 的元件數。
 DynAny copy()
          創建一個新 DynAny 物件,其值為調用此方法的 DynAny 的深層複製。
 DynAny current_component()
          返回當前位置上的元件的 DynAny。
 TCKind current_member_kind()
          返回與當前位置的成員有關聯的 TCKind。
 String current_member_name()
          返回當前位置上成員的名稱。
 void destroy()
          銷毀 DynAny 物件。
 boolean equal(DynAny dyn_any)
          比較兩個 DynAny 值是否相等。
 void from_any(Any value)
          使用 any 中包含的值初始化與 DynAny 物件有關聯的值。
 Any get_any()
          提取由此 DynAny 表示的 Any 中包含的 Any 值。
 boolean get_boolean()
          從此 DynAny 中提取 boolean 值。
 char get_char()
          從此 DynAny 中提取 char 值。
 double get_double()
          從此 DynAny 中提取 double 值。
 DynAny get_dyn_any()
          提取由此 DynAny 表示的 Any 中包含的 Any 值,並將其包裹在新 DynAny 中返回。
 float get_float()
          從此 DynAny 中提取 float 值。
 int get_long()
          從此 DynAny 中提取 integer 值。
 long get_longlong()
          從此 DynAny 中提取 long 值。
 NameDynAnyPair[] get_members_as_dyn_any()
          返回一個 NameDynAnyPair 序列,這些 NameDynAnyPair 描述該值型別中每個成員的名稱和值。
 NameValuePair[] get_members()
          返回一個 NameValuePair 序列,這些 NameValuePair 描述該值型別的每個成員的名稱和值。
 byte get_octet()
          從此 DynAny 中提取 byte 值。
 Object get_reference()
          從此 DynAny 中提取對 CORBA 物件的參考。
 short get_short()
          從此 DynAny 中提取 short 值。
 String get_string()
          從此 DynAny 中提取 string 值。
 TypeCode get_typecode()
          從此 DynAny 中提取 TypeCode 物件。
 int get_ulong()
          從此 DynAny 中提取 integer 值。
 long get_ulonglong()
          從此 DynAny 中提取 long 值。
 short get_ushort()
          從此 DynAny 中提取 short 值。
 Serializable get_val()
          從此 DynAny 中提取 Serializable 物件。
 char get_wchar()
          從此 DynAny 中提取 long 值。
 String get_wstring()
          從此 DynAny 中提取 string 值。
 void insert_any(Any value)
          將 Any 值插入此 DynAny 表示的 Any 中。
 void insert_boolean(boolean value)
          將 boolean 值插入 DynAny 中。
 void insert_char(char value)
          將 char 值插入 DynAny 中。
 void insert_double(double value)
          將 double 值插入 DynAny 中。
 void insert_dyn_any(DynAny value)
          將參數 DynAny 中所包含的 Any 值插入此 DynAny 表示的 Any 中。
 void insert_float(float value)
          將 float 值插入 DynAny 中。
 void insert_long(int value)
          將 integer 值插入 DynAny 中。
 void insert_longlong(long value)
          將 long 值插入 DynAny 中。
 void insert_octet(byte value)
          將 byte 值插入 DynAny 中。
 void insert_reference(Object value)
          將對 CORBA 物件的參考插入到 DynAny 中。
 void insert_short(short value)
          將 short 值插入 DynAny 中。
 void insert_string(String value)
          將 string 值插入 DynAny 中。
 void insert_typecode(TypeCode value)
          將 TypeCode 物件插入 DynAny 中。
 void insert_ulong(int value)
          將 integer 值插入 DynAny 中。
 void insert_ulonglong(long value)
          將 long 值插入 DynAny 中。
 void insert_ushort(short value)
          將 short 值插入 DynAny 中。
 void insert_val(Serializable value)
          將對 Serializable 物件的參考插入此 DynAny 中。
 void insert_wchar(char value)
          將 char 值插入 DynAny 中。
 void insert_wstring(String value)
          將 string 值插入 DynAny 中。
 boolean is_null()
          如果 DynValueCommon 表示 null 值型別,則返回 true。
 boolean next()
          將當前位置推進到下一個元件。
 void rewind()
          等效於 seek(0)。
 boolean seek(int index)
          將當前位置設置為索引。
 void set_members_as_dyn_any(NameDynAnyPair[] value)
          根據 NameDynAnyPair 序列初始化該值型別的成員。
 void set_members(NameValuePair[] value)
          根據 NameValuePair 序列初始化該值型別的成員。
 void set_to_null()
          將 DynValueCommon 的表示形式更改為 null 值型別。
 void set_to_value()
          使用新建構的值取代 null 值型別。
 Any to_any()
          從 DynAny 物件創建 any 值。
 TypeCode type()
          返回與此 DynAny 物件有關聯的 TypeCode。
 
從類別 org.omg.CORBA.portable.ObjectImpl 繼承的方法
_create_request, _create_request, _duplicate, _get_delegate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _invoke, _is_a, _is_equivalent, _is_local, _non_existent, _orb, _release, _releaseReply, _request, _request, _servant_postinvoke, _servant_preinvoke, _set_delegate, _set_policy_override, equals, hashCode, toString
 
從類別 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
從介面 org.omg.CORBA.Object 繼承的方法
_create_request, _create_request, _duplicate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _is_a, _is_equivalent, _non_existent, _release, _request, _set_policy_override
 

欄位詳細資訊

_opsClass

public static final Class _opsClass
建構子詳細資訊

_DynValueStub

public _DynValueStub()
方法詳細資訊

current_member_name

public String current_member_name()
                           throws TypeMismatch,
                                  InvalidValue
返回當前位置上成員的名稱。此操作可能返回空字元串,因為所操作的值的 TypeCode 可能不包含成員名稱。

指定者:
介面 DynValueOperations 中的 current_member_name
拋出:
TypeMismatch - 如果 DynValue 表示 null 值型別。
InvalidValue - 如果當前位置不指示成員

current_member_kind

public TCKind current_member_kind()
                           throws TypeMismatch,
                                  InvalidValue
返回與當前位置的成員有關聯的 TCKind。

指定者:
介面 DynValueOperations 中的 current_member_kind
拋出:
TypeMismatch - 如果 DynValue 表示 null 值型別。
InvalidValue - 如果當前位置不指示成員

get_members

public NameValuePair[] get_members()
                            throws InvalidValue
返回一個 NameValuePair 序列,這些 NameValuePair 描述該值型別的每個成員的名稱和值。該序列所含成員的順序與成員的宣告順序(由 DynValue 的 TypeCode 指示)相同。當前位置不受影響。如果 DynValue 的 TypeCode 不包含成員名稱,則返回序列中的成員名稱將為空字元串。

指定者:
介面 DynValueOperations 中的 get_members
拋出:
InvalidValue - 如果此物件表示 null 值型別

set_members

public void set_members(NameValuePair[] value)
                 throws TypeMismatch,
                        InvalidValue
根據 NameValuePair 序列初始化該值型別的成員。如果傳遞的序列長度不為 0,則操作將當前位置設置為 0。如果傳遞空序列,則將當前位置設置為 -1。使用此方法可以將 null 值型別初始化為非 null 值型別。

根據 DynValue 的 TypeCode 的指示,成員在 NameValuePair 中必須按它們在值型別的 IDL 規範中的顯示順序顯示,除非它們為空字元串。該操作不嘗試根據成員名稱分派成員值。

指定者:
介面 DynValueOperations 中的 set_members
拋出:
TypeMismatch - 如果所傳遞序列中提供的成員名稱與 DynValue 的 TypeCode 中相應成員名稱不比對,並且它們都不是空字元串
InvalidValue - 如果所傳遞序列的元素數與 DynValue 的 TypeCode 指示的成員數不一致

get_members_as_dyn_any

public NameDynAnyPair[] get_members_as_dyn_any()
                                        throws InvalidValue
返回一個 NameDynAnyPair 序列,這些 NameDynAnyPair 描述該值型別中每個成員的名稱和值。該序列所含成員的順序與成員的宣告順序(由 DynValue 的 TypeCode 指示)相同。當前位置不受影響。如果 DynValue 的 TypeCode 不包含成員名稱,則返回序列中的成員名稱將為空字元串。

指定者:
介面 DynValueOperations 中的 get_members_as_dyn_any
拋出:
InvalidValue - 如果此物件表示 null 值型別

set_members_as_dyn_any

public void set_members_as_dyn_any(NameDynAnyPair[] value)
                            throws TypeMismatch,
                                   InvalidValue
根據 NameDynAnyPair 序列初始化該值型別的成員。如果傳遞的序列長度不為 0,則操作將當前位置設置為 0。如果傳遞空序列,則將當前位置設置為 -1。使用此方法可以將 null 值型別初始化為非 null 值型別。

根據 DynValue 的 TypeCode 的指示,成員在 NameDynAnyPair 中必須按它們在值型別的 IDL 規範中的顯示順序顯示,除非它們為空字元串。該操作不嘗試根據成員名稱分派成員值。

指定者:
介面 DynValueOperations 中的 set_members_as_dyn_any
拋出:
TypeMismatch - 如果所傳遞序列中提供的成員名稱與 DynValue 的 TypeCode 中相應成員名稱不比對,並且它們都不是空字元串
InvalidValue - 如果所傳遞序列的元素數與 DynValue 的 TypeCode 指示的成員數不一致

is_null

public boolean is_null()
如果 DynValueCommon 表示 null 值型別,則返回 true。

指定者:
介面 DynValueCommonOperations 中的 is_null

set_to_null

public void set_to_null()
將 DynValueCommon 的表示形式更改為 null 值型別。

指定者:
介面 DynValueCommonOperations 中的 set_to_null

set_to_value

public void set_to_value()
使用新建構的值取代 null 值型別。將其元件初始化為預設值,該值與使用 DynAnyFactory.create_dyn_any_from_type_code 所得結果相同。如果 DynValueCommon 表示非 null 值型別,則此操作無效。

指定者:
介面 DynValueCommonOperations 中的 set_to_value

type

public TypeCode type()
返回與此 DynAny 物件有關聯的 TypeCode。DynAny 物件是通過分派給它的 TypeCode 值創建的。此 TypeCode 值確定通過 DynAny 物件處理的值的型別。注意,與 DynAny 物件關聯的 TypeCode 在創建 DynAny 時初始化,在 DynAny 物件的生存期間不能更改。

指定者:
介面 DynAnyOperations 中的 type
返回:
與 DynAny 物件關聯的 TypeCode

assign

public void assign(DynAny dyn_any)
            throws TypeMismatch
使用與另一個 DynAny 物件有關聯的值初始化與 DynAny 物件有關聯的值。對具有元件的值,將目標 DynAny 的當前位置設置為 0,對不具有元件的值,將該位置設置為 -1。

指定者:
介面 DynAnyOperations 中的 assign
參數:
dyn_any -
拋出:
TypeMismatch - 如果傳遞的 DynAny 的型別不等於目標 DynAny 的型別

from_any

public void from_any(Any value)
              throws TypeMismatch,
                     InvalidValue
使用 any 中包含的值初始化與 DynAny 物件有關聯的值。對具有元件的值,將目標 DynAny 的當前位置設置為 0,對不具有元件的值,將該位置設置為 -1。

指定者:
介面 DynAnyOperations 中的 from_any
拋出:
TypeMismatch - 如果所傳遞 Any 的型別不等於目標 DynAny 的型別
InvalidValue - 如果所傳遞的 Any 不包含合法值(如 null 字元串)

to_any

public Any to_any()
從 DynAny 物件創建 any 值。將與 DynAny 物件關聯的 TypeCode 的副本分派給所得 any。將與 DynAny 物件關聯的值複製到 any 中。

指定者:
介面 DynAnyOperations 中的 to_any
返回:
具有相同值和 TypeCode 的新 Any 物件

equal

public boolean equal(DynAny dyn_any)
比較兩個 DynAny 值是否相等。如果兩個 DynAny 值的 TypeCode 相等,則它們的值相等;以此類別推,所有元件 DynAny 都具有相等的值。將比較的兩個 DynAny 的當前位置不影響比較結果。

指定者:
介面 DynAnyOperations 中的 equal
返回:
如果 DynAny 相等,則返回 true;否則返回 false

destroy

public void destroy()
銷毀 DynAny 物件。此操作釋放所有用來表示與 DynAny 物件關聯的資料值的資源。為了避免資源洩漏,此操作必須在從 ORB 介面的創建操作之一獲取的參考或者 DynAny.copy() 返回的參考上調用。在元件 DynAny 物件(例如,current_component 操作返回的物件)上調用 destroy 沒有任何效果。銷毀 DynAny 物件意味著銷毀從其獲取的所有 DynAny 物件。即對已銷毀 DynAny 元件的參考將變得無效。調用這種參考將引發 OBJECT_NOT_EXIST。如果在銷毀可從中獲取元件的 DynAny 前使用 copy 操作產生了元件的復本,則可以在該 DynAny 的生存期後操作其元件。

指定者:
介面 DynAnyOperations 中的 destroy

copy

public DynAny copy()
創建一個新 DynAny 物件,其值為調用此方法的 DynAny 的深層複製。該操作是多態的,即對派生自 DynAny 的型別之一(如 DynStruct)調用該操作時,將創建派生的型別,但以 DynAny 基本型別的形式返回其參考。

指定者:
介面 DynAnyOperations 中的 copy
返回:
DynAny 物件的深層複製

insert_boolean

public void insert_boolean(boolean value)
                    throws TypeMismatch,
                           InvalidValue
將 boolean 值插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_boolean
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_octet

public void insert_octet(byte value)
                  throws TypeMismatch,
                         InvalidValue
將 byte 值插入 DynAny 中。將 IDL octet 資料型別映射為 Java byte 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_octet
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_char

public void insert_char(char value)
                 throws TypeMismatch,
                        InvalidValue
將 char 值插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_char
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_short

public void insert_short(short value)
                  throws TypeMismatch,
                         InvalidValue
將 short 值插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_short
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_ushort

public void insert_ushort(short value)
                   throws TypeMismatch,
                          InvalidValue
將 short 值插入 DynAny 中。將 IDL ushort 資料型別映射為 Java short 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_ushort
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_long

public void insert_long(int value)
                 throws TypeMismatch,
                        InvalidValue
將 integer 值插入 DynAny 中。將 IDL long 資料型別映射為 Java int 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_long
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_ulong

public void insert_ulong(int value)
                  throws TypeMismatch,
                         InvalidValue
將 integer 值插入 DynAny 中。將 IDL ulong 資料型別映射為 Java int 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_ulong
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_float

public void insert_float(float value)
                  throws TypeMismatch,
                         InvalidValue
將 float 值插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_float
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_double

public void insert_double(double value)
                   throws TypeMismatch,
                          InvalidValue
將 double 值插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_double
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_string

public void insert_string(String value)
                   throws TypeMismatch,
                          InvalidValue
將 string 值插入 DynAny 中。有界的和無界的字元串都使用此方法插入。

指定者:
介面 DynAnyOperations 中的 insert_string
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
InvalidValue - 如果插入的字元串的長度超出有界字元串的界限
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_reference

public void insert_reference(Object value)
                      throws TypeMismatch,
                             InvalidValue
將對 CORBA 物件的參考插入到 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_reference
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_typecode

public void insert_typecode(TypeCode value)
                     throws TypeMismatch,
                            InvalidValue
將 TypeCode 物件插入 DynAny 中。

指定者:
介面 DynAnyOperations 中的 insert_typecode
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_longlong

public void insert_longlong(long value)
                     throws TypeMismatch,
                            InvalidValue
將 long 值插入 DynAny 中。將 IDL long 資料型別映射為 Java long 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_longlong
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_ulonglong

public void insert_ulonglong(long value)
                      throws TypeMismatch,
                             InvalidValue
將 long 值插入 DynAny 中。將 IDL 無符號 long 資料型別映射為 Java long 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_ulonglong
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_wchar

public void insert_wchar(char value)
                  throws TypeMismatch,
                         InvalidValue
將 char 值插入 DynAny 中。將 IDL wchar 資料型別映射為 Java char 資料型別。

指定者:
介面 DynAnyOperations 中的 insert_wchar
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_wstring

public void insert_wstring(String value)
                    throws TypeMismatch,
                           InvalidValue
將 string 值插入 DynAny 中。有界的和無界的字元串都使用此方法插入。

指定者:
介面 DynAnyOperations 中的 insert_wstring
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
InvalidValue - 如果插入的字元串的長度超出有界字元串的界限
TypeMismatch

insert_any

public void insert_any(Any value)
                throws TypeMismatch,
                       InvalidValue
將 Any 值插入此 DynAny 表示的 Any 中。

指定者:
介面 DynAnyOperations 中的 insert_any
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_dyn_any

public void insert_dyn_any(DynAny value)
                    throws TypeMismatch,
                           InvalidValue
將參數 DynAny 中所包含的 Any 值插入此 DynAny 表示的 Any 中。

指定者:
介面 DynAnyOperations 中的 insert_dyn_any
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

insert_val

public void insert_val(Serializable value)
                throws TypeMismatch,
                       InvalidValue
將對 Serializable 物件的參考插入此 DynAny 中。將 IDL ValueBase 型別映射為 Java Serializable 型別。

指定者:
介面 DynAnyOperations 中的 insert_val
拋出:
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法

get_boolean

public boolean get_boolean()
                    throws TypeMismatch,
                           InvalidValue
從此 DynAny 中提取 boolean 值。

指定者:
介面 DynAnyOperations 中的 get_boolean
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_octet

public byte get_octet()
               throws TypeMismatch,
                      InvalidValue
從此 DynAny 中提取 byte 值。將 IDL octet 資料型別映射為 Java byte 資料型別。

指定者:
介面 DynAnyOperations 中的 get_octet
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_char

public char get_char()
              throws TypeMismatch,
                     InvalidValue
從此 DynAny 中提取 char 值。

指定者:
介面 DynAnyOperations 中的 get_char
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_short

public short get_short()
                throws TypeMismatch,
                       InvalidValue
從此 DynAny 中提取 short 值。

指定者:
介面 DynAnyOperations 中的 get_short
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_ushort

public short get_ushort()
                 throws TypeMismatch,
                        InvalidValue
從此 DynAny 中提取 short 值。將 IDL ushort 資料型別映射為 Java short 資料型別。

指定者:
介面 DynAnyOperations 中的 get_ushort
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_long

public int get_long()
             throws TypeMismatch,
                    InvalidValue
從此 DynAny 中提取 integer 值。將 IDL long 資料型別映射為 Java int 資料型別。

指定者:
介面 DynAnyOperations 中的 get_long
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_ulong

public int get_ulong()
              throws TypeMismatch,
                     InvalidValue
從此 DynAny 中提取 integer 值。將 IDL ulong 資料型別映射為 Java int 資料型別。

指定者:
介面 DynAnyOperations 中的 get_ulong
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_float

public float get_float()
                throws TypeMismatch,
                       InvalidValue
從此 DynAny 中提取 float 值。

指定者:
介面 DynAnyOperations 中的 get_float
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_double

public double get_double()
                  throws TypeMismatch,
                         InvalidValue
從此 DynAny 中提取 double 值。

指定者:
介面 DynAnyOperations 中的 get_double
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_string

public String get_string()
                  throws TypeMismatch,
                         InvalidValue
從此 DynAny 中提取 string 值。有界的和無界的字元串都使用此方法析取。

指定者:
介面 DynAnyOperations 中的 get_string
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_reference

public Object get_reference()
                     throws TypeMismatch,
                            InvalidValue
從此 DynAny 中提取對 CORBA 物件的參考。

指定者:
介面 DynAnyOperations 中的 get_reference
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_typecode

public TypeCode get_typecode()
                      throws TypeMismatch,
                             InvalidValue
從此 DynAny 中提取 TypeCode 物件。

指定者:
介面 DynAnyOperations 中的 get_typecode
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_longlong

public long get_longlong()
                  throws TypeMismatch,
                         InvalidValue
從此 DynAny 中提取 long 值。將 IDL long 資料型別映射為 Java long 資料型別。

指定者:
介面 DynAnyOperations 中的 get_longlong
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_ulonglong

public long get_ulonglong()
                   throws TypeMismatch,
                          InvalidValue
從此 DynAny 中提取 long 值。將 IDL 無符號 long 資料型別映射為 Java long 資料型別。

指定者:
介面 DynAnyOperations 中的 get_ulonglong
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_wchar

public char get_wchar()
               throws TypeMismatch,
                      InvalidValue
從此 DynAny 中提取 long 值。將 IDL wchar 資料型別映射為 Java char 資料型別。

指定者:
介面 DynAnyOperations 中的 get_wchar
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_wstring

public String get_wstring()
                   throws TypeMismatch,
                          InvalidValue
從此 DynAny 中提取 string 值。有界的和無界的字元串都使用此方法析取。

指定者:
介面 DynAnyOperations 中的 get_wstring
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue

get_any

public Any get_any()
            throws TypeMismatch,
                   InvalidValue
提取由此 DynAny 表示的 Any 中包含的 Any 值。

指定者:
介面 DynAnyOperations 中的 get_any
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_dyn_any

public DynAny get_dyn_any()
                   throws TypeMismatch,
                          InvalidValue
提取由此 DynAny 表示的 Any 中包含的 Any 值,並將其包裹在新 DynAny 中返回。

指定者:
介面 DynAnyOperations 中的 get_dyn_any
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

get_val

public Serializable get_val()
                     throws TypeMismatch,
                            InvalidValue
從此 DynAny 中提取 Serializable 物件。將 IDL ValueBase 型別映射為 Java Serializable 型別。

指定者:
介面 DynAnyOperations 中的 get_val
拋出:
TypeMismatch - 如果在 DynAny 中存取的元件型別不等於所請求的型別。
TypeMismatch - 如果在其當前元件本身也有元件的 DynAny 上調用此方法
InvalidValue - 如果此 DynAny 具有元件,但當前位置為 -1

seek

public boolean seek(int index)
將當前位置設置為索引。當前位置為索引 0 到 n-1,即索引 0 對應於第一個元件。如果所得當前位置指示 DynAny 的元件,則操作返回 true;如果索引指示的位置不與元件對應,則返回 false。使用負索引調用 seek 是合法的。它將當前位置設置為 -1,指示不存在元件,並返回 false。如果傳遞相應位置上沒有元件的 DynAny 的非負索引值,則會將當前位置設置為 -1 並返回 false。

指定者:
介面 DynAnyOperations 中的 seek

rewind

public void rewind()
等效於 seek(0)。

指定者:
介面 DynAnyOperations 中的 rewind

next

public boolean next()
將當前位置推進到下一個元件。如果所得當前位置指示一個元件,則該操作返回 true;否則返回 false。返回值為 false 時當前位置仍為 -1。如果在沒有元件的 DynAny 上調用 next,則當前位置仍為 -1 並返回 false。

指定者:
介面 DynAnyOperations 中的 next

component_count

public int component_count()
返回 DynAny 的元件數。對於沒有元件的 DynAny,它返回 0。該操作僅計算位於頂層的元件。例如,如果在具有單個成員的 DynStruct 上調用 component_count,則返回值為 1,與成員的型別無關。

指定者:
介面 DynAnyOperations 中的 component_count

current_component

public DynAny current_component()
                         throws TypeMismatch
返回當前位置上的元件的 DynAny。它不推進當前位置,所以反覆調用 current_component 且不插入對 rewind、next 或 seek 的調用將返回相同的元件。返回的 DynAny 物件參考可用於獲取/設置當前元件的值。如果當前元件表示復合型別,則可基於 TypeCode 縮小返回參考的範圍以獲取對應於復合型別的介面。在不能有元件的 DynAny(如 DynEnum 或空異常)上調用 current_component 將引發 TypeMismatch。在其當前位置為 -1 的 DynAny 上調用 current_component 將返回 nil 參考。迭代操作和 current_component 都可用於動態組成 any 值。創建動態 any(如 DynStruct)後,current_component 和 next 可用於初始化值的所有元件。一旦完成初始化動態值,to_any 將創建相應的 any 值。

指定者:
介面 DynAnyOperations 中的 current_component
拋出:
TypeMismatch - 如果在不能有元件的 DynAny(如 DynEnum 或空異常)上調用此方法

_ids

public String[] _ids()
從類別 ObjectImpl 複製的描述
獲得包含此 ObjectImpl 物件所支持的存儲資源庫標識符的字元串陣列。例如,對於 sub,此方法返回所有關於該 stub 所支持的介面的資訊。

指定者:
類別 ObjectImpl 中的 _ids
返回:
ObjectImpl 實例支持的所有存儲資源庫標識符所組成的陣列

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only