@Override public ByteBuffer read(long id) { return other.read(id) ; }
@Override public ByteBuffer read(long id) { info("read("+id+")") ; return other.read(id) ; }
public String read(long id) { ByteBuffer bb = file.read(id) ; String x = Bytes.fromByteBuffer(bb) ; x = decompress(x) ; return x ; }
public void dump(DumpHandler handler) { long fileIdx = 0 ; while ( true ) { ByteBuffer bb = file.read(fileIdx) ; String str = Bytes.fromByteBuffer(bb) ; handler.handle(fileIdx, str) ; fileIdx = fileIdx + bb.limit() + 4 ; if ( fileIdx >= file.position() ) break ; } }
@Override public ByteBuffer read(long id) { super.checkTxn(); if ( isReadTxn() ) // Reader. Check bounds. checkBoundsReader(id, super.getDataState()) ; return objFile.read(id) ; }
@Test public void objectfile_06() { ByteBuffer bb1 = ByteBuffer.allocate(10) ; fill(bb1) ; ByteBuffer bb2 = ByteBuffer.allocate(20) ; fill(bb2) ; long x1 = file.write(bb1) ; long x2 = file.write(bb2) ; ByteBuffer bb1a = file.read(x1) ; ByteBuffer bb2a = file.read(x2) ; assertNotSame(bb1a, bb2a) ; assertTrue(sameValue(bb1, bb1a)) ; assertTrue(sameValue(bb2, bb2a)) ; }
private void write(int sizeOfBuffer, int... sizes) { ObjectFile file = make(sizeOfBuffer) ; int N = sizes.length ; ByteBuffer bb[] = new ByteBuffer[N] ; long loc[] = new long[N] ; ByteBuffer read[] = new ByteBuffer[N] ; for ( int i = 0 ; i < N ; i++ ) { bb[i] = ByteBuffer.allocate(sizes[i]) ; fill(bb[i]) ; loc[i] = file.write(bb[i]) ; } //file.sync() ; for ( int i = 0 ; i < N ; i++ ) { read[i] = file.read(loc[i]) ; assertNotSame(bb[i], read[i]) ; sameValue(bb[i], read[i]) ; } }
@Test public void objectfile_02() { Block block = file.allocWrite(10) ; fill(block.getByteBuffer()) ; file.completeWrite(block) ; long x1 = block.getId() ; assertEquals(0, x1) ; ByteBuffer bb = file.read(x1) ; // position assertTrue(sameValue(block.getByteBuffer(), bb)) ; }
private void writePrealloc(int sizeOfBuffer, int... sizes) { ObjectFile file = make(sizeOfBuffer) ; int N = sizes.length ; Block blocks[] = new Block[N] ; ByteBuffer read[] = new ByteBuffer[N] ; for ( int i = 0 ; i < N ; i++ ) { blocks[i] = file.allocWrite(sizes[i]) ; fill(blocks[i].getByteBuffer()) ; file.completeWrite(blocks[i]) ; } for ( int i = 0 ; i < N ; i++ ) { read[i] = file.read(blocks[i].getId()) ; assertNotSame(blocks[i].getByteBuffer(), read[i]) ; sameValue(blocks[i].getByteBuffer(), read[i]) ; } }