JavaTM 2
Platform
Std. Ed. v1.4.0

org.omg.DynamicAny
インタフェース DynStructOperations

すべてのスーパーインタフェース:
DynAnyOperations
既知のサブインタフェースの一覧:
DynStruct
既知の実装クラスの一覧:
_DynStructStub

public interface DynStructOperations
extends DynAnyOperations

DynStruct オブジェクトによって、IDL 構造体および例外値の操作がサポートされます。例外のメンバは、構造体のメンバと同じように扱われます。


メソッドの概要
 TCKind current_member_kind()
          現在位置のメンバに関連付けられた TCKind を返します。
 String current_member_name()
          現在位置のメンバの名前を返します。
 NameDynAnyPair[] get_members_as_dyn_any()
          DynStruct オブジェクトに関連付けられている構造体の各メンバの名前と値を示す NameDynAnyPair のシーケンスを返します。
 NameValuePair[] get_members()
          DynStruct オブジェクトに関連付けられている構造体の各メンバの名前と値を示す NameValuePair のシーケンスを返します。
 void set_members_as_dyn_any(NameDynAnyPair[] value)
          DynStruct オブジェクトに関連付けられた構造体のデータ値を、NameDynAnyPair のシーケンスで初期化します。
 void set_members(NameValuePair[] value)
          DynStruct オブジェクトに関連付けられた構造体のデータ値を、NameValuePair のシーケンスで初期化します。
 
インタフェース 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

public String current_member_name()
                           throws TypeMismatch,
                                  InvalidValue
現在位置のメンバの名前を返します。操作対象の値の TypeCode にはメンバの名前が含まれないこともあるため、空の文字列が返される場合もあります。

例外:
TypeMismatch - DynStruct が空の例外を表す場合
InvalidValue - 現在位置がメンバを指し示さない場合

current_member_kind

public TCKind current_member_kind()
                           throws TypeMismatch,
                                  InvalidValue
現在位置のメンバに関連付けられた TCKind を返します。

例外:
TypeMismatch - DynStruct が空の例外を表す場合
InvalidValue - 現在位置がメンバを指し示さない場合

get_members

public NameValuePair[] get_members()
DynStruct オブジェクトに関連付けられている構造体の各メンバの名前と値を示す NameValuePair のシーケンスを返します。このシーケンスには、DynStruct の TypeCode によって示されるメンバの宣言順にメンバが含まれます。現在位置は変更されません。DynStruct の TypeCode にメンバ名が含まれない場合は、返されるシーケンス内のメンバ名は空になります。


set_members

public void set_members(NameValuePair[] value)
                 throws TypeMismatch,
                        InvalidValue
DynStruct オブジェクトに関連付けられた構造体のデータ値を、NameValuePair のシーケンスで初期化します。渡されるシーケンスの長さが 0 以外である場合、現在位置は 0 に設定されます。そうではない場合、つまり空のシーケンスが渡されると、現在位置は -1 に設定されます。

NameValuePair のメンバの順序は、DynStruct の TypeCode に示される構造体の IDL 指定と同じ順序である必要があります。そうでない場合は空の文字列でなければなりません。このオペレーションでは、メンバ名に基づいてメンバの値が割り当てられることはありません。

例外:
TypeMismatch - 渡されたシーケンスに指定されたメンバ名が、DynStruct の TypeCode の対応するメンバ名に一致せず、空の文字列でもない場合
InvalidValue - 渡されたシーケンスの要素の数が、DynStruct の TypeCode のメンバの数と一致しない場合

get_members_as_dyn_any

public NameDynAnyPair[] get_members_as_dyn_any()
DynStruct オブジェクトに関連付けられている構造体の各メンバの名前と値を示す NameDynAnyPair のシーケンスを返します。このシーケンスには、DynStruct の TypeCode によって示されるメンバの宣言順にメンバが含まれます。現在位置は変更されません。DynStruct の TypeCode にメンバ名が含まれない場合は、返されるシーケンス内のメンバ名は空になります。


set_members_as_dyn_any

public void set_members_as_dyn_any(NameDynAnyPair[] value)
                            throws TypeMismatch,
                                   InvalidValue
DynStruct オブジェクトに関連付けられた構造体のデータ値を、NameDynAnyPair のシーケンスで初期化します。渡されるシーケンスの長さが 0 以外である場合、現在位置は 0 に設定されます。そうではない場合、つまり空のシーケンスが渡されると、現在位置は -1 に設定されます。

NameDynAnyPair のメンバの順序は、DynStruct の TypeCode に示される構造体の IDL 指定と同じ順序である必要があります。そうでない場合は空の文字列でなければなりません。このオペレーションでは、メンバ名に基づいてメンバの値が割り当てられることはありません。

例外:
TypeMismatch - 渡されたシーケンスに指定されたメンバ名が、DynStruct の TypeCode の対応するメンバ名に一致せず、空の文字列でもない場合
InvalidValue - 渡されたシーケンスの要素の数が、DynStruct の TypeCode のメンバの数と一致しない場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.