use of org.bboxdb.storage.sstable.spatialindex.rtree.AbstractRTreeReader in project bboxdb by jnidzwetzki.
the class TestRTreeMemoryDeserializer method testSerializeIndexSmall.
/**
* Test the encoding and the decoding of the index with only one entry
* = data is encoded in the root node
*
* @throws StorageManagerException
* @throws IOException
* @throws InterruptedException
*/
@Test(timeout = 60000)
public void testSerializeIndexSmall() throws StorageManagerException, IOException, InterruptedException {
final List<SpatialIndexEntry> tupleList = new ArrayList<>();
tupleList.add(new SpatialIndexEntry(new BoundingBox(1.0, 1.2), 2));
final SpatialIndexBuilder index = new RTreeBuilder();
index.bulkInsert(tupleList);
RTreeTestHelper.queryIndex(tupleList, index);
final File tempFile = File.createTempFile("rtree-", "-test");
tempFile.deleteOnExit();
final RandomAccessFile raf = new RandomAccessFile(tempFile, "rw");
index.writeToFile(raf);
raf.close();
final AbstractRTreeReader indexRead = getRTreeReader();
final RandomAccessFile rafRead = new RandomAccessFile(tempFile, "r");
indexRead.readFromFile(rafRead);
rafRead.close();
final List<? extends SpatialIndexEntry> resultList = indexRead.getEntriesForRegion(new BoundingBox(1.1, 1.2));
Assert.assertEquals(1, resultList.size());
indexRead.close();
}
use of org.bboxdb.storage.sstable.spatialindex.rtree.AbstractRTreeReader in project bboxdb by jnidzwetzki.
the class TestRTreeMemoryDeserializer method testSerializeIndex3D.
/**
* Test the encoding and the decoding of the index
* @throws StorageManagerException
* @throws IOException
* @throws InterruptedException
*/
@Test(timeout = 60000)
public void testSerializeIndex3D() throws StorageManagerException, IOException, InterruptedException {
final List<SpatialIndexEntry> tupleList = RTreeTestHelper.generateRandomTupleList(3);
final SpatialIndexBuilder index = new RTreeBuilder();
index.bulkInsert(tupleList);
RTreeTestHelper.queryIndex(tupleList, index);
final File tempFile = File.createTempFile("rtree-", "-test");
tempFile.deleteOnExit();
final RandomAccessFile raf = new RandomAccessFile(tempFile, "rw");
index.writeToFile(raf);
raf.close();
final AbstractRTreeReader indexRead = getRTreeReader();
final RandomAccessFile rafRead = new RandomAccessFile(tempFile, "r");
indexRead.readFromFile(rafRead);
rafRead.close();
RTreeTestHelper.queryIndex(tupleList, indexRead);
}
use of org.bboxdb.storage.sstable.spatialindex.rtree.AbstractRTreeReader in project bboxdb by jnidzwetzki.
the class TestRTreeMemoryDeserializer method testSerializeIndex1D.
/**
* Test the encoding and the decoding of the index
* @throws StorageManagerException
* @throws IOException
* @throws InterruptedException
*/
@Test(timeout = 60000)
public void testSerializeIndex1D() throws StorageManagerException, IOException, InterruptedException {
final List<SpatialIndexEntry> tupleList = RTreeTestHelper.generateRandomTupleList(1);
final SpatialIndexBuilder index = new RTreeBuilder();
index.bulkInsert(tupleList);
RTreeTestHelper.queryIndex(tupleList, index);
final File tempFile = File.createTempFile("rtree-", "-test");
tempFile.deleteOnExit();
final RandomAccessFile raf = new RandomAccessFile(tempFile, "rw");
index.writeToFile(raf);
raf.close();
final AbstractRTreeReader indexRead = getRTreeReader();
final RandomAccessFile rafRead = new RandomAccessFile(tempFile, "r");
indexRead.readFromFile(rafRead);
rafRead.close();
RTreeTestHelper.queryIndex(tupleList, indexRead);
}
use of org.bboxdb.storage.sstable.spatialindex.rtree.AbstractRTreeReader in project bboxdb by jnidzwetzki.
the class TestRTreeMemoryDeserializer method testSerializeIndex0.
/**
* Test different node size
* @throws StorageManagerException
* @throws IOException
* @throws InterruptedException
*/
@Test(timeout = 60000)
public void testSerializeIndex0() throws StorageManagerException, IOException, InterruptedException {
final int maxNodeSize = 12;
final RTreeBuilder index = new RTreeBuilder(maxNodeSize);
final File tempFile = File.createTempFile("rtree-", "-test");
tempFile.deleteOnExit();
final RandomAccessFile raf = new RandomAccessFile(tempFile, "rw");
index.writeToFile(raf);
raf.close();
final AbstractRTreeReader indexRead = getRTreeReader();
final RandomAccessFile rafRead = new RandomAccessFile(tempFile, "r");
indexRead.readFromFile(rafRead);
rafRead.close();
Assert.assertEquals(maxNodeSize, index.getMaxNodeSize());
Assert.assertEquals(maxNodeSize, indexRead.getMaxNodeSize());
indexRead.close();
}
Aggregations