recordnumberbinding.java
来自「嵌入式数据库Berkeley DB-4.5.20源代码」· Java 代码 · 共 71 行
JAVA
71 行
/*- * See the file LICENSE for redistribution information. * * Copyright (c) 2000-2006 * Oracle Corporation. All rights reserved. * * $Id: RecordNumberBinding.java,v 12.3 2006/08/31 18:14:05 bostic Exp $ */package com.sleepycat.bind;import com.sleepycat.compat.DbCompat;import com.sleepycat.db.DatabaseEntry;/** * An <code>EntryBinding</code> that treats a record number key entry as a * <code>Long</code> key object. * * <p>Record numbers are returned as <code>Long</code> objects, although on * input any <code>Number</code> object may be used.</p> * * @author Mark Hayes */public class RecordNumberBinding implements EntryBinding { /** * Creates a byte array binding. */ public RecordNumberBinding() { } // javadoc is inherited public Object entryToObject(DatabaseEntry entry) { return new Long(entryToRecordNumber(entry)); } // javadoc is inherited public void objectToEntry(Object object, DatabaseEntry entry) { recordNumberToEntry(((Number) object).longValue(), entry); } /** * Utility method for use by bindings to translate a entry buffer to an * record number integer. * * @param entry the entry buffer. * * @return the record number. */ public static long entryToRecordNumber(DatabaseEntry entry) { return DbCompat.getRecordNumber(entry) & 0xFFFFFFFFL; } /** * Utility method for use by bindings to translate a record number integer * to a entry buffer. * * @param recordNumber the record number. * * @param entry the entry buffer to hold the record number. */ public static void recordNumberToEntry(long recordNumber, DatabaseEntry entry) { entry.setData(new byte[4], 0, 4); DbCompat.setRecordNumber(entry, (int) recordNumber); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?