📄 testentitybinding.java
字号:
/*- * See the file LICENSE for redistribution information. * * Copyright (c) 2002-2006 * Oracle Corporation. All rights reserved. * * $Id: TestEntityBinding.java,v 12.3 2006/08/24 14:46:46 bostic Exp $ */package com.sleepycat.collections.test;import com.sleepycat.bind.EntityBinding;import com.sleepycat.bind.RecordNumberBinding;import com.sleepycat.db.DatabaseEntry;/** * @author Mark Hayes */class TestEntityBinding implements EntityBinding { private boolean isRecNum; TestEntityBinding(boolean isRecNum) { this.isRecNum = isRecNum; } public Object entryToObject(DatabaseEntry key, DatabaseEntry value) { byte keyByte; if (isRecNum) { if (key.getSize() != 4) { throw new IllegalStateException(); } keyByte = (byte) RecordNumberBinding.entryToRecordNumber(key); } else { if (key.getSize() != 1) { throw new IllegalStateException(); } keyByte = key.getData()[key.getOffset()]; } if (value.getSize() != 1) { throw new IllegalStateException(); } byte valByte = value.getData()[value.getOffset()]; return new TestEntity(keyByte, valByte); } public void objectToKey(Object object, DatabaseEntry key) { byte val = (byte) ((TestEntity) object).key; if (isRecNum) { RecordNumberBinding.recordNumberToEntry(val, key); } else { key.setData(new byte[] { val }, 0, 1); } } public void objectToData(Object object, DatabaseEntry value) { byte val = (byte) ((TestEntity) object).value; value.setData(new byte[] { val }, 0, 1); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -