org.axiondb.engine.indexes
public abstract class BaseArrayIndex extends BaseIndex implements Index
indices
that maintain an in-memory,
sorted array of key values (and their associated row identifiers). This type of index
is fast to read, relatively slow to write and somewhat memory expensive when very
large.
Version: $Revision: 1.10 $ $Date: 2005/12/20 18:32:30 $
Constructor Summary | |
---|---|
BaseArrayIndex(String name, Column column, boolean unique) | |
BaseArrayIndex(String name, Column column, boolean unique, IntList values) |
Method Summary | |
---|---|
void | changeRowId(Table table, Row row, int oldId, int newId) |
protected abstract int | find(Object value, boolean required) |
abstract IndexLoader | getIndexLoader() |
RowIterator | getInorderRowIterator(RowSource source) |
abstract List | getKeyList() |
protected abstract List | getKeyList(int minIndex, int maxIndex) |
RowIterator | getRowIterator(RowSource source, Function fn, Object value) |
String | getType() |
protected IntList | getValueList() |
protected abstract int | insertKey(Object value) |
protected abstract int | removeKey(Object value) |
protected abstract void | removeKeyAt(int index) |
void | rowDeleted(RowEvent event) |
void | rowInserted(RowEvent event) |
void | rowUpdated(RowEvent event) |
void | save(File dataDirectory) |
void | saveAfterTruncate(File dataDirectory) |
boolean | supportsFunction(Function fn) |
void | truncate() |