• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java RowAVL类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.hsqldb.RowAVL的典型用法代码示例。如果您正苦于以下问题:Java RowAVL类的具体用法?Java RowAVL怎么用?Java RowAVL使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



RowAVL类属于org.hsqldb包,在下文中一共展示了RowAVL类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: rollbackRow

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void rollbackRow(Session session, Row row, int changeAction,
                        int txModel) {

    switch (changeAction) {

        case RowAction.ACTION_DELETE :
            if (txModel == TransactionManager.LOCKS) {
                ((RowAVL) row).setNewNodes(this);
                indexRow(session, row);
            }
            break;

        case RowAction.ACTION_INSERT :
            delete(session, row);
            remove(row);
            break;

        case RowAction.ACTION_INSERT_DELETE :

            // INSERT + DELETE
            remove(row);
            break;
    }
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:25,代码来源:RowStoreAVLMemory.java


示例2: delete

import org.hsqldb.RowAVL; //导入依赖的package包/类
/**
 * Row might have changed from memory to disk or indexes added
 */
public void delete(Session session, Row row) {

    NodeAVL node  = ((RowAVL) row).getNode(0);
    int     count = 0;

    while (node != null) {
        count++;

        node = node.nNext;
    }

    if ((isCached ^ !row.isMemory()) || count != indexList.length) {
        row = ((Table) table).getDeleteRowFromLog(session, row.getData());
    }

    if (row != null) {
        super.delete(session, row);
    }
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:23,代码来源:RowStoreAVLHybridExtended.java


示例3: indexRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
public final void indexRows(Session session) {

        writeLock();

        try {
            for (int i = 1; i < indexList.length; i++) {
                setAccessor(indexList[i], null);
            }

            RowIterator it = rowIterator();

            while (it.hasNext()) {
                Row row = it.getNextRow();

                ((RowAVL) row).clearNonPrimaryNodes();

                for (int i = 1; i < indexList.length; i++) {
                    indexList[i].insert(session, this, row);
                }
            }
        } finally {
            writeUnlock();
        }
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:25,代码来源:RowStoreAVL.java


示例4: reindex

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void reindex(Session session, Index index) {

        writeLock();

        try {
            setAccessor(index, null);

            RowIterator it = table.rowIterator(this);

            while (it.hasNext()) {
                RowAVL row = (RowAVL) it.getNextRow();

                row.getNode(index.getPosition()).delete();
                index.insert(session, this, row);
            }
        } finally {
            writeUnlock();
        }
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:20,代码来源:RowStoreAVL.java


示例5: dropIndexFromRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
void dropIndexFromRows(Index primaryIndex, Index oldIndex) {

        RowIterator it       = primaryIndex.firstRow(this);
        int         position = oldIndex.getPosition() - 1;

        while (it.hasNext()) {
            Row     row      = it.getNextRow();
            int     i        = position - 1;
            NodeAVL backnode = ((RowAVL) row).getNode(0);

            while (i-- > 0) {
                backnode = backnode.nNext;
            }

            backnode.nNext = backnode.nNext.nNext;
        }

        it.release();
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:20,代码来源:RowStoreAVL.java


示例6: getNewCachedObject

import org.hsqldb.RowAVL; //导入依赖的package包/类
public CachedObject getNewCachedObject(Session session,
                                       Object object)
                                       {

    Row row = new RowAVL(table, (Object[]) object);

    if (session != null) {
        RowAction.addAction(session, RowAction.ACTION_INSERT, table, row);
    }

    int id = rowIdSequence++;

    row.setPos(id);
    rowIdMap.put(id, row);

    return row;
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:18,代码来源:RowStoreAVLMemory.java


示例7: dropIndexFromRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
void dropIndexFromRows(Index primaryIndex,
                       Index oldIndex) {

    RowIterator it       = primaryIndex.firstRow(this);
    int         position = oldIndex.getPosition() - 1;

    while (it.hasNext()) {
        Row     row      = it.getNextRow();
        int     i        = position - 1;
        NodeAVL backnode = ((RowAVL) row).getNode(0);

        while (i-- > 0) {
            backnode = backnode.nNext;
        }

        backnode.nNext = backnode.nNext.nNext;
    }
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:19,代码来源:RowStoreAVLMemory.java


示例8: getAccessor

import org.hsqldb.RowAVL; //导入依赖的package包/类
public CachedObject getAccessor(Index key) {

        NodeAVL node = (NodeAVL) accessorList[key.getPosition()];

        if (node == null) {
            return null;
        }

        if (!node.isInMemory()) {
            RowAVL row = (RowAVL) get(node.getPos(), false);

            node                            = row.getNode(key.getPosition());
            accessorList[key.getPosition()] = node;
        }

        return node;
    }
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:18,代码来源:RowStoreAVLDisk.java


示例9: indexRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
public final void indexRows() {

        RowIterator it = rowIterator();

        for (int i = 1; i < indexList.length; i++) {
            setAccessor(indexList[i], null);
        }

        while (it.hasNext()) {
            Row row = it.getNextRow();

            if (row instanceof RowAVL) {
                ((RowAVL) row).clearNonPrimaryNodes();
            }

            for (int i = 1; i < indexList.length; i++) {
                indexList[i].insert(null, this, row);
            }
        }
    }
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:21,代码来源:RowStoreAVL.java


示例10: getNewCachedObject

import org.hsqldb.RowAVL; //导入依赖的package包/类
public CachedObject getNewCachedObject(Session session, Object object,
                                       boolean tx) {

    int id;

    synchronized (this) {
        id = rowIdSequence++;
    }

    Row row = new RowAVL(table, (Object[]) object, id, this);

    if (tx) {
        RowAction action = new RowAction(session, table,
                                         RowAction.ACTION_INSERT, row,
                                         null);

        row.rowAction = action;
    }

    return row;
}
 
开发者ID:Julien35,项目名称:dev-courses,代码行数:22,代码来源:RowStoreAVLMemory.java


示例11: delete

import org.hsqldb.RowAVL; //导入依赖的package包/类
/**
 * Row might have changed from memory to disk or indexes added
 */
public void delete(Session session, Row row) {

    NodeAVL node  = ((RowAVL) row).getNode(0);
    int     count = 0;

    while (node != null) {
        count++;

        node = node.nNext;
    }

    if ((isCached && row.isMemory()) || count != indexList.length) {
        row = ((Table) table).getDeleteRowFromLog(session, row.getData());
    }

    if (row != null) {
        super.delete(session, row);
    }
}
 
开发者ID:Julien35,项目名称:dev-courses,代码行数:23,代码来源:RowStoreAVLHybridExtended.java


示例12: indexRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
public final void indexRows(Session session) {

        for (int i = 1; i < indexList.length; i++) {
            setAccessor(indexList[i], null);
        }

        RowIterator it = rowIterator();

        while (it.hasNext()) {
            Row row = it.getNextRow();

            ((RowAVL) row).clearNonPrimaryNodes();

            for (int i = 1; i < indexList.length; i++) {
                indexList[i].insert(session, this, row);
            }
        }
    }
 
开发者ID:Julien35,项目名称:dev-courses,代码行数:19,代码来源:RowStoreAVL.java


示例13: rollbackRow

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void rollbackRow(Session session, Row row, int changeAction,
                        int txModel) {

    switch (changeAction) {

        case RowAction.ACTION_DELETE :
            row = (Row) get(row, true);

            ((RowAVL) row).setNewNodes(this);
            row.keepInMemory(false);
            indexRow(session, row);
            break;

        case RowAction.ACTION_INSERT :
            delete(session, row);
            remove(row.getPos());
            break;

        case RowAction.ACTION_INSERT_DELETE :

            // INSERT + DELEETE
            remove(row.getPos());
            break;
    }
}
 
开发者ID:RabadanLab,项目名称:Pegasus,代码行数:26,代码来源:RowStoreAVLHybrid.java


示例14: indexRow

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void indexRow(Session session, Row row) {

        NodeAVL node  = ((RowAVL) row).getNode(0);
        int     count = 0;

        while (node != null) {
            count++;

            node = node.nNext;
        }

        if (count != indexList.length) {
            resetAccessorKeys(table.getIndexList());
            ((RowAVL) row).setNewNodes(this);
        }

        super.indexRow(session, row);
    }
 
开发者ID:RabadanLab,项目名称:Pegasus,代码行数:19,代码来源:RowStoreAVLHybridExtended.java


示例15: dropIndexFromRows

import org.hsqldb.RowAVL; //导入依赖的package包/类
void dropIndexFromRows(Index primaryIndex, Index oldIndex) {

        RowIterator it       = primaryIndex.firstRow(this);
        int         position = oldIndex.getPosition() - 1;

        while (it.hasNext()) {
            Row     row      = it.getNextRow();
            int     i        = position - 1;
            NodeAVL backnode = ((RowAVL) row).getNode(0);

            while (i-- > 0) {
                backnode = backnode.nNext;
            }

            backnode.nNext = backnode.nNext.nNext;
        }
    }
 
开发者ID:RabadanLab,项目名称:Pegasus,代码行数:18,代码来源:RowStoreAVL.java


示例16: rollbackRow

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void rollbackRow(Session session, Row row, int changeAction,
                        int txModel) {

    switch (changeAction) {

        case RowAction.ACTION_DELETE :
            row = (Row) get(row, true);

            ((RowAVL) row).setNewNodes(this);
            row.keepInMemory(false);
            indexRow(session, row);
            break;

        case RowAction.ACTION_INSERT :
            delete(session, row);
            remove(row);
            break;

        case RowAction.ACTION_INSERT_DELETE :

            // INSERT + DELEETE
            remove(row);
            break;
    }
}
 
开发者ID:topahl,项目名称:StoryBear,代码行数:26,代码来源:RowStoreAVLHybrid.java


示例17: getNewCachedObject

import org.hsqldb.RowAVL; //导入依赖的package包/类
public CachedObject getNewCachedObject(Session session, Object object,
                                       boolean tx) {

    int id  = rowIdSequence.getAndIncrement();
    Row row = new RowAVL(table, (Object[]) object, id, this);

    if (tx) {
        RowAction.addInsertAction(session, table, row);
    }

    return row;
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:13,代码来源:RowStoreAVLMemory.java


示例18: rollbackRow

import org.hsqldb.RowAVL; //导入依赖的package包/类
public void rollbackRow(Session session, Row row, int changeAction,
                        int txModel) {

    switch (changeAction) {

        case RowAction.ACTION_DELETE :
            if (txModel == TransactionManager.LOCKS) {
                ((RowAVL) row).setNewNodes(this);
                indexRow(session, row);
            }
            break;

        case RowAction.ACTION_INSERT :
            if (txModel == TransactionManager.LOCKS) {
                delete(session, row);
                remove(row);
            }
            break;

        case RowAction.ACTION_INSERT_DELETE :

            // INSERT + DELETE
            if (txModel == TransactionManager.LOCKS) {
                remove(row);
            } else {
                delete(session, row);
                remove(row);
            }
            break;
    }
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:32,代码来源:RowStoreAVLDiskData.java


示例19: next

import org.hsqldb.RowAVL; //导入依赖的package包/类
NodeAVL next(PersistentStore store, NodeAVL x) {

        if (x == null) {
            return null;
        }

        RowAVL row = x.getRow(store);

        x = row.getNode(position);

        NodeAVL temp = x.getRight(store);

        if (temp != null) {
            x    = temp;
            temp = x.getLeft(store);

            while (temp != null) {
                x    = temp;
                temp = x.getLeft(store);
            }

            return x;
        }

        temp = x;
        x    = x.getParent(store);

        while (x != null && x.isRight(temp)) {
            temp = x;
            x    = x.getParent(store);
        }

        return x;
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:35,代码来源:IndexAVL.java


示例20: last

import org.hsqldb.RowAVL; //导入依赖的package包/类
NodeAVL last(PersistentStore store, NodeAVL x) {

        if (x == null) {
            return null;
        }

        RowAVL row = x.getRow(store);

        x = row.getNode(position);

        NodeAVL temp = x.getLeft(store);

        if (temp != null) {
            x    = temp;
            temp = x.getRight(store);

            while (temp != null) {
                x    = temp;
                temp = x.getRight(store);
            }

            return x;
        }

        temp = x;
        x    = x.getParent(store);

        while (x != null && x.isLeft(temp)) {
            temp = x;
            x    = x.getParent(store);
        }

        return x;
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:35,代码来源:IndexAVL.java



注:本文中的org.hsqldb.RowAVL类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java LiferayWindowState类代码示例发布时间:2022-05-22
下一篇:
Java IDataFixer类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap