JavaTM 2 Platform
Standard Ed. 6

org.omg.DynamicAny
介面 DynStructOperations

所有父級介面:
DynAnyOperations
所有已知子介面:
DynStruct
所有已知實作類別:
_DynStructStub

public interface DynStructOperations
extends DynAnyOperations

DynStruct 物件支持對 IDL 結構資料 (struct) 和異常 (exception) 值的操作。對異常成員的處理方式與對結構資料成員一樣。


方法摘要
 TCKind current_member_kind()
          返回與當前位置的成員關聯的 TCKind。
 String current_member_name()
          返回當前位置的成員的名稱。
 NameDynAnyPair[] get_members_as_dyn_any()
          返回一個 NameDynAnyPair 序列,這些 NameDynAnyPair 描述與 DynStruct 物件關聯的結構資料中每個成員的名稱和值。
 NameValuePair[] get_members()
          返回一個 NameValuePair 序列,這些 NameValuePair 描述與 DynStruct 物件關聯的結構資料中每個成員的名稱和值。
 void set_members_as_dyn_any(NameDynAnyPair[] value)
          初始化與 NameDynAnyPair 序列中的 DynStruct 物件關聯的結構資料值。
 void set_members(NameValuePair[] value)
          初始化與 NameValuePair 序列中的 DynStruct 物件關聯的結構資料值。
 
從介面 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
 

方法詳細資訊

current_member_name

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

拋出:
TypeMismatch - 如果 DynStruct 表示空異常。
InvalidValue - 如果當前位置不指示成員

current_member_kind

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

拋出:
TypeMismatch - 如果 DynStruct 表示空異常。
InvalidValue - 如果當前位置不指示成員

get_members

NameValuePair[] get_members()
返回一個 NameValuePair 序列,這些 NameValuePair 描述與 DynStruct 物件關聯的結構資料中每個成員的名稱和值。該序列所含成員的順序與成員的宣告順序(由 DynStruct 的 TypeCode 指示)相同。當前位置不受影響。如果 DynStruct 的 TypeCode 不包含成員名稱,則返回序列中的成員名稱將為空字元串。


set_members

void set_members(NameValuePair[] value)
                 throws TypeMismatch,
                        InvalidValue
初始化與 NameValuePair 序列中的 DynStruct 物件關聯的結構資料值。如果傳遞的序列長度不為 0,則操作將當前位置設置為 0。如果傳遞的是空序列,則將當前位置設置為 -1。

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

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

get_members_as_dyn_any

NameDynAnyPair[] get_members_as_dyn_any()
返回一個 NameDynAnyPair 序列,這些 NameDynAnyPair 描述與 DynStruct 物件關聯的結構資料中每個成員的名稱和值。該序列所含成員的順序與成員的宣告順序(由 DynStruct 的 TypeCode 指示)相同。當前位置不受影響。如果 DynStruct 的 TypeCode 不包含成員名稱,則返回序列中的成員名稱將為空字元串。


set_members_as_dyn_any

void set_members_as_dyn_any(NameDynAnyPair[] value)
                            throws TypeMismatch,
                                   InvalidValue
初始化與 NameDynAnyPair 序列中的 DynStruct 物件關聯的結構資料值。如果傳遞的序列長度不為 0,則操作將當前位置設置為 0。如果傳遞的是空序列,則將當前位置設置為 -1。

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

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

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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