JavaTM 2 Platform
Standard Ed. 6

org.omg.DynamicAny
类 DynAnyFactoryHelper

java.lang.Object
  继承者 org.omg.DynamicAny.DynAnyFactoryHelper

public abstract class DynAnyFactoryHelper
extends Object

DynAny 对象可以通过调用 DynAnyFactory 对象上的操作来创建。一般来说,只有两种创建 DynAny 对象的方式:

已构造的 DynAny 对象支持允许创建新 DynAny 对象的操作,可在这些对象中封装对某个成分值的访问权限。DynAny 对象还支持用于创建新 DynAny 对象的复制操作。通过调用 ORB.resolve_initial_references() 并将标识符参数设置为字符串常量 "DynAnyFactory",可以获取 DynAnyFactory 对象的引用。

动态解释 any 的第一步通常是使用 create_dyn_any() 创建 DynAny 对象。所得 DynAny 对象引用集中于 DynFixed、DynStruct、DynSequence、DynArray、DynUnion、DynEnum 或 DynValue 这几种对象引用,因 any 的类型而异。

动态创建 any 需要使用 create_dyn_any_from_type_code() 创建 DynAny 对象,并传递与要创建的值关联的 TypeCode。返回的引用将集中为复合类型之一,如 DynStruct(如果合适)。然后,通过在所得对象上调用操作来初始化值。最后,可调用 to_any 操作根据已构造的 DynAny 创建 any 值。


构造方法摘要
DynAnyFactoryHelper()
           
 
方法摘要
static DynAnyFactory extract(Any a)
           
static String id()
           
static void insert(Any a, DynAnyFactory that)
           
static DynAnyFactory narrow(Object obj)
           
static DynAnyFactory read(InputStream istream)
           
static TypeCode type()
           
static DynAnyFactory unchecked_narrow(Object obj)
           
static void write(OutputStream ostream, DynAnyFactory value)
           
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

DynAnyFactoryHelper

public DynAnyFactoryHelper()
方法详细信息

insert

public static void insert(Any a,
                          DynAnyFactory that)

extract

public static DynAnyFactory extract(Any a)

type

public static TypeCode type()

id

public static String id()

read

public static DynAnyFactory read(InputStream istream)

write

public static void write(OutputStream ostream,
                         DynAnyFactory value)

narrow

public static DynAnyFactory narrow(Object obj)

unchecked_narrow

public static DynAnyFactory unchecked_narrow(Object obj)

JavaTM 2 Platform
Standard Ed. 6

提交错误或意见

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