46 lines
1.2 KiB
Groovy
46 lines
1.2 KiB
Groovy
@Grab(group='org.fusesource.hawtdb', module='hawtdb', version='1.6')
|
|
|
|
import org.fusesource.hawtbuf.codec.StringCodec
|
|
import org.fusesource.hawtdb.api.BTreeIndexFactory
|
|
import org.fusesource.hawtdb.api.PageFile
|
|
import org.fusesource.hawtdb.api.PageFileFactory
|
|
import org.fusesource.hawtdb.api.SortedIndex
|
|
import org.fusesource.hawtbuf.Buffer
|
|
|
|
|
|
|
|
File tmpFile = new File(System.getProperty("user.home") + File.separator + "test_hawtdb.dat")
|
|
//tmpFile.createNewFile()
|
|
|
|
def writeSomeData(tmpFile) {
|
|
def factory = new PageFileFactory()
|
|
factory.file = tmpFile
|
|
factory.open()
|
|
def pageFile = factory.getPageFile()
|
|
int pageIdx = pageFile.alloc()
|
|
pageFile.write(pageIdx, new Buffer("Test".getBytes()))
|
|
println "writed at page index ${pageIdx}"
|
|
pageFile.flush()
|
|
pageFile.close()
|
|
}
|
|
|
|
|
|
def readTest(tmpFile) {
|
|
def factory = new PageFileFactory()
|
|
factory.file = tmpFile
|
|
factory.open()
|
|
def pageFile = factory.getPageFile()
|
|
println "page size is: " + pageFile.pageSize
|
|
Buffer b = new Buffer(512)
|
|
pageFile.read(0, b)
|
|
println "content try read " + b
|
|
|
|
pageFile.close()
|
|
}
|
|
|
|
|
|
writeSomeData(tmpFile)
|
|
readTest(tmpFile)
|
|
|
|
|