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

📄 myrangecursor.java

📁 嵌入式数据库Berkeley DB-4.5.20源代码
💻 JAVA
字号:
/*- * See the file LICENSE for redistribution information. * * Copyright (c) 2000-2006 *      Oracle Corporation.  All rights reserved. * * $Id: MyRangeCursor.java,v 12.2 2006/08/31 18:14:08 bostic Exp $ */package com.sleepycat.collections;import com.sleepycat.compat.DbCompat;import com.sleepycat.db.Cursor;import com.sleepycat.db.CursorConfig;import com.sleepycat.db.DatabaseException;import com.sleepycat.util.keyrange.KeyRange;import com.sleepycat.util.keyrange.RangeCursor;class MyRangeCursor extends RangeCursor {    private DataView view;    private boolean isRecnoOrQueue;    private boolean writeCursor;    MyRangeCursor(KeyRange range,                  CursorConfig config,                  DataView view,                  boolean writeAllowed)        throws DatabaseException {        super(range, view.dupsRange, openCursor(view, config, writeAllowed));        this.view = view;        isRecnoOrQueue = view.recNumAllowed && !view.btreeRecNumDb;        writeCursor = isWriteCursor(config, writeAllowed);    }    /**     * Returns true if a write cursor is requested by the user via the cursor     * config, or if this is a writable cursor and the user has not specified a     * cursor config.  For CDB, a special cursor must be created for writing.     * See CurrentTransaction.openCursor.     */    private static boolean isWriteCursor(CursorConfig config,                                         boolean writeAllowed) {        return DbCompat.getWriteCursor(config) ||               (config == CursorConfig.DEFAULT && writeAllowed);    }    private static Cursor openCursor(DataView view,                                     CursorConfig config,                                     boolean writeAllowed)        throws DatabaseException {        return view.currentTxn.openCursor            (view.db, config, isWriteCursor(config, writeAllowed),             view.useTransaction());    }    protected Cursor dupCursor(Cursor cursor, boolean samePosition)        throws DatabaseException {        return view.currentTxn.dupCursor(cursor, writeCursor, samePosition);    }    protected void closeCursor(Cursor cursor)        throws DatabaseException {        view.currentTxn.closeCursor(cursor);    }    protected boolean checkRecordNumber() {        return isRecnoOrQueue;    }}

⌨️ 快捷键说明

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