- java.lang.Object
-
- org.omg.CORBA.portable.ObjectImpl
-
- org.omg.DynamicAny._DynAnyFactoryStub
-
- すべての実装されたインタフェース:
Serializable
,Object
,IDLEntity
,DynAnyFactory
,DynAnyFactoryOperations
public class _DynAnyFactoryStub extends ObjectImpl implements DynAnyFactory
DynAnyオブジェクトは、DynAnyFactoryオブジェクトでオペレーションを呼び出すことで作成できます。 一般的に、DynAnyオブジェクトを作成する方法は2つあります。- 既存のDynAnyオブジェクトでオペレーションを呼び出す
- DynAnyFactoryオブジェクトでオペレーションを呼び出す
通常、anyの動的解釈では、最初にcreate_dyn_any()を使用してDynAnyオブジェクトを作成します。 作成されるDynAnyオブジェクト参照は、anyの型によって、DynFixed、DynStruct、DynSequence、DynArray、DynUnion、DynEnum、またはDynValueといったオブジェクト参照にナロー変換できます。
anyの動的作成では、create_dyn_any_from_type_code()を使用してDynAnyオブジェクトを作成します。このとき、作成する値に関連付けるTypeCodeを渡します。 返される参照は、必要に応じてDynStructなどの複雑な型のどれかにナロー変換できます。 次に、結果として得られるオブジェクトでオペレーションを呼び出して値を初期化します。 最後に、to_anyオペレーションを起動して、構築型DynAnyから値を作成します。
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 _DynAnyFactoryStub()
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 DynAny
create_dyn_any(Any value)
any値からDynAnyオブジェクトを新規作成します。DynAny
create_dyn_any_from_type_code(TypeCode type)
TypeCodeからDynAnyを作成します。-
インタフェース 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
-
クラス org.omg.CORBA.portable.ObjectImplで宣言されたメソッド
_create_request, _create_request, _duplicate, _get_delegate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _ids, _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
-
-
-
-
フィールドの詳細
-
_opsClass
public static final Class _opsClass
-
-
メソッドの詳細
-
create_dyn_any
public DynAny create_dyn_any(Any value) throws InconsistentTypeCode
any値からDynAnyオブジェクトを新規作成します。 any値に関連付けられているTypeCodeのコピーが、結果として作成されるDynAnyオブジェクトに割り当てられます。 DynAnyオブジェクトに関連付けられる値は、元のanyの値のコピーになります。 作成されたDynAnyの現在位置は、渡された値にコンポーネントがある場合はゼロ、それ以外の場合は -1に設定されます。- 定義:
create_dyn_any
、インタフェース:DynAnyFactoryOperations
- 例外:
InconsistentTypeCode
- 値のTypeCodeがTCKindのtk_Principal、tk_native、またはtk_abstract_interfaceである場合
-
create_dyn_any_from_type_code
public DynAny create_dyn_any_from_type_code(TypeCode type) throws InconsistentTypeCode
TypeCodeからDynAnyを作成します。 TypeCodeによって、作成されるオブジェクトの型はDynAnyまたはそれから派生したDynStructなどの型のどれかになります。 返される参照は、派生型にナロー変換できます。 どの場合も、TypeCodeから作成されたDynAnyにはデフォルト値があります。 基本型のデフォルト値は次のようになります。- booleanの場合はfalse
- 数値型の場合はゼロ
- octet、char、およびwcharの場合はゼロ
- stringとwstringの場合は空の文字列
- オブジェクト参照の場合はnull
- 型コードの場合はTCKindの値がtk_nullである型コード
- any値の場合は、TCKindの値がtk_nullである型コードを持ち、値を持たないany
- DynSequenceの場合、現在位置が -1に設定され、空のシーケンスが作成される。
- DynEnumの場合、現在位置が -1に設定され、列挙子の値はTypeCodeによって示される最初の列挙子の値に設定される。
- DynFixedの場合、現在位置が -1に設定され、値ゼロが設定される。
- DynStructの場合、空の例外では現在位置が -1に、それ以外のTypeCodeでは現在位置がゼロに設定される。 メンバーがあれば、そのデフォルト値に(再帰的に)初期化される。
- DynArrayの場合、現在位置がゼロに設定され、要素がデフォルト値に(再帰的に)初期化される。
- DynUnionの場合、現在位置がゼロに設定される。 判別子の値は、共用体で最初に指定されたメンバーに一致する値に設定される。 このメンバーはアクティブ化され、(再帰的に)デフォルト値に初期化される。
- DynValueおよびDynValueBoxの場合、null値に初期化される。
- 定義:
create_dyn_any_from_type_code
、インタフェース:DynAnyFactoryOperations
- 例外:
InconsistentTypeCode
-
-