⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbcreateobj.java

📁 Java的面向对象数据库系统的源代码
💻 JAVA
字号:
// You can redistribute this software and/or modify it under the terms of
// the Ozone Core License version 1 published by ozone-db.org.
//
// The original code and portions created by SMB are
// Copyright (C) 1997-@year@ by SMB GmbH. All rights reserved.
//
// $Id: DbCreateObj.java,v 1.7 2002/12/29 11:15:56 per_nyfelt Exp $

package org.ozoneDB.core.DbRemote;

import org.ozoneDB.OzoneProxy;
import org.ozoneDB.core.*;

import java.io.*;


/**
 * @author <a href="http://www.softwarebuero.de/">SMB</a>
 * @version $Revision: 1.7 $Date: 2002/12/29 11:15:56 $
 */
public final class DbCreateObj extends DbCommand {

    private String className;

    private int access;

    private String objName;

    private String sig;

    private Object[] args;


    public DbCreateObj() {
    }


    public DbCreateObj( String _className, int _access, String _objName, String _sig, Object[] _args ) {
        className = _className;
        access = _access;
        objName = _objName;
        sig = _sig;
        args = _args;
    }


    public void perform( Transaction ta ) throws Exception {
        // env.logWriter.newEntry (this, "DbCreateObj.perform()...", LogWriter.DEBUG);
        ObjectContainer container = ta.createObject( className, access, objName, sig, args, null );

        try {
            OzoneProxy		resultingProxy	= container.ozoneProxy();

            getProxyObjectGate().addObjectReferencedByClient(resultingProxy);

            if (Env.selfCheck) {
                if (resultingProxy==null) { // The Proxy should never be null.
                    throw new Error("Found during DbCreateObj.perform(): container="+container+",resultingProxy="+resultingProxy+".");
                }
            }

            result = resultingProxy;
        } finally {
            container.unpin();
        }
    }


    public void writeExternal( ObjectOutput out ) throws IOException {
        out.writeObject( className );
        out.writeInt( access );
        out.writeObject( objName );
        out.writeObject( sig );
        out.writeObject( args );
    }


    public void readExternal( ObjectInput in ) throws IOException, ClassNotFoundException {
        className = (String)in.readObject();
        access = in.readInt();
        objName = (String)in.readObject();
        sig = (String)in.readObject();
        args = (Object[])in.readObject();
    }


    public String toString() {
        return super.toString();
    }

}

⌨️ 快捷键说明

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