JavaTM 2 Platform
Standard Ed. 5.0

org.omg.DynamicAny
Class _DynAnyFactoryStub

java.lang.Object
  extended by org.omg.CORBA.portable.ObjectImpl
      extended by org.omg.DynamicAny._DynAnyFactoryStub
All Implemented Interfaces:
Serializable, Object, IDLEntity, DynAnyFactory, DynAnyFactoryOperations

public class _DynAnyFactoryStub
extends ObjectImpl
implements DynAnyFactory

DynAny objects can be created by invoking operations on the DynAnyFactory object. Generally there are only two ways to create a DynAny object:

A constructed DynAny object supports operations that enable the creation of new DynAny objects encapsulating access to the value of some constituent. DynAny objects also support the copy operation for creating new DynAny objects. A reference to the DynAnyFactory object is obtained by calling ORB.resolve_initial_references() with the identifier parameter set to the string constant "DynAnyFactory".

Dynamic interpretation of an any usually involves creating a DynAny object using create_dyn_any() as the first step. Depending on the type of the any, the resulting DynAny object reference can be narrowed to a DynFixed, DynStruct, DynSequence, DynArray, DynUnion, DynEnum, or DynValue object reference.

Dynamic creation of an any involves creating a DynAny object using create_dyn_any_from_type_code(), passing the TypeCode associated with the value to be created. The returned reference is narrowed to one of the complex types, such as DynStruct, if appropriate. Then, the value can be initialized by means of invoking operations on the resulting object. Finally, the to_any operation can be invoked to create an any value from the constructed DynAny.


Field Summary
static Class _opsClass
           
 
Constructor Summary
_DynAnyFactoryStub()
           
 
Method Summary
 String[] _ids()
          Retrieves a string array containing the repository identifiers supported by this ObjectImpl object.
 DynAny create_dyn_any_from_type_code(TypeCode type)
          Creates a DynAny from a TypeCode.
 DynAny create_dyn_any(Any value)
          Creates a new DynAny object from an any value.
 
Methods inherited from class 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
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface 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
 

Field Detail

_opsClass

public static final Class _opsClass
Constructor Detail

_DynAnyFactoryStub

public _DynAnyFactoryStub()
Method Detail

create_dyn_any

public DynAny create_dyn_any(Any value)
                      throws InconsistentTypeCode
Creates a new DynAny object from an any value. A copy of the TypeCode associated with the any value is assigned to the resulting DynAny object. The value associated with the DynAny object is a copy of the value in the original any. The current position of the created DynAny is set to zero if the passed value has components, to -1 otherwise

Specified by:
create_dyn_any in interface DynAnyFactoryOperations
Throws:
InconsistentTypeCode - if value has a TypeCode with a TCKind of tk_Principal, tk_native, or tk_abstract_interface

create_dyn_any_from_type_code

public DynAny create_dyn_any_from_type_code(TypeCode type)
                                     throws InconsistentTypeCode
Creates a DynAny from a TypeCode. Depending on the TypeCode, the created object may be of type DynAny, or one of its derived types, such as DynStruct. The returned reference can be narrowed to the derived type. In all cases, a DynAny constructed from a TypeCode has an initial default value. The default values of basic types are: For complex types, creation of the corresponding DynAny assigns a default value as follows:

Specified by:
create_dyn_any_from_type_code in interface DynAnyFactoryOperations
Throws:
InconsistentTypeCode

_ids

public String[] _ids()
Description copied from class: ObjectImpl
Retrieves a string array containing the repository identifiers supported by this ObjectImpl object. For example, for a stub, this method returns information about all the interfaces supported by the stub.

Specified by:
_ids in class ObjectImpl
Returns:
the array of all repository identifiers supported by this ObjectImpl instance

JavaTM 2 Platform
Standard Ed. 5.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.