wizardtransaction.java

来自「Java的面向对象数据库系统的源代码」· Java 代码 · 共 85 行

JAVA
85
字号
// 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$package org.ozoneDB.core.storage.wizardStore;import org.ozoneDB.DxLib.DxDeque;import org.ozoneDB.DxLib.DxHashMap;import org.ozoneDB.DxLib.DxListDeque;import org.ozoneDB.DxLib.DxMap;import org.ozoneDB.DxLib.DxSet;import org.ozoneDB.core.Env;import org.ozoneDB.core.Transaction;import org.ozoneDB.core.TransactionID;import org.ozoneDB.core.User;import org.ozoneDB.core.storage.wizardStore.IDTableChange;import org.ozoneDB.core.storage.wizardStore.NameTableChange;import org.ozoneDB.core.storage.ClusterID;/** * @version $Id $ */public class WizardTransaction extends Transaction {        public final static int DEFAULT_TABLE_SIZE = 1024;    protected ClusterID lrucid;    protected DxMap idTable;    // initialized by WizardStore.nameContainer() if needed    protected DxMap nameTable;    protected DxSet commitClusterIDs;    private DxDeque idTableChanges;    private DxDeque nameTableChanges;    public WizardTransaction(Env env, User owner) {        super(env, owner);        idTable = new DxHashMap(DEFAULT_TABLE_SIZE);    }    /**     * Construct a new transaction. THIS TRANSACTION CAN BE USED FOR TESTING     * ONLY!     */    public WizardTransaction(TransactionID _taID) {        super(_taID);        idTable = new DxHashMap(DEFAULT_TABLE_SIZE);    }    public void nameTableChanges_push(NameTableChange change) {        if (nameTableChanges == null) {            nameTableChanges = new DxListDeque(/*DEFAULT_TABLE_SIZE*/);        }        nameTableChanges.pushTop(change);    }    public NameTableChange nameTableChanges_pop() {        return nameTableChanges != null ? (NameTableChange) nameTableChanges.popBottom() : null;    }    public void idTableChanges_push(IDTableChange change) {        if (idTableChanges == null) {            idTableChanges = new DxListDeque(/*DEFAULT_TABLE_SIZE*/);        }        idTableChanges.pushTop(change);    }    public IDTableChange idTableChanges_pop() {        return idTableChanges != null ? (IDTableChange) idTableChanges.popBottom() : null;    }}

⌨️ 快捷键说明

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