dynstructimpl.java

来自「java jdk 1.4的源码」· Java 代码 · 共 69 行

JAVA
69
字号
/* * @(#)DynStructImpl.java	1.6 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package com.sun.corba.se.internal.DynamicAny;import org.omg.CORBA.ORB;import org.omg.CORBA.TypeCode;import org.omg.CORBA.TCKind;import org.omg.CORBA.Any;import org.omg.CORBA.NO_IMPLEMENT;import org.omg.CORBA.OBJECT_NOT_EXIST;import org.omg.CORBA.TypeCodePackage.BadKind;import org.omg.CORBA.TypeCodePackage.Bounds;import org.omg.DynamicAny.*;import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;import org.omg.DynamicAny.DynAnyPackage.InvalidValue;import org.omg.DynamicAny.DynAnyFactoryPackage.InconsistentTypeCode;public class DynStructImpl extends DynAnyComplexImpl implements DynStruct{    //    // Constructors    //    private DynStructImpl() {        this(null, (Any)null, false);    }    protected DynStructImpl(ORB orb, Any any, boolean copyValue) {        // We can be sure that typeCode is of kind tk_struct        super(orb, any, copyValue);        // Initialize components lazily, on demand.        // This is an optimization in case the user is only interested in storing Anys.    }    protected DynStructImpl(ORB orb, TypeCode typeCode) {        // We can be sure that typeCode is of kind tk_struct        super(orb, typeCode);        // For DynStruct, the operation sets the current position to -1        // for empty exceptions and to zero for all other TypeCodes.        // The members (if any) are (recursively) initialized to their default values.        index = 0;    }    //    // Methods differing from DynValues    //    public org.omg.DynamicAny.NameValuePair[] get_members () {        if (status == STATUS_DESTROYED) {            throw new OBJECT_NOT_EXIST();        }        checkInitComponents();        return nameValuePairs;    }    public org.omg.DynamicAny.NameDynAnyPair[] get_members_as_dyn_any () {        if (status == STATUS_DESTROYED) {            throw new OBJECT_NOT_EXIST();        }        checkInitComponents();        return nameDynAnyPairs;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?