public abstract class BaseIndex extends BaseTableModificationListener implements Index, TableModificationListener
Index.| Constructor and Description |
|---|
BaseIndex(java.lang.String name,
Column column,
boolean unique) |
| Modifier and Type | Method and Description |
|---|---|
protected java.util.Comparator |
getComparator() |
protected DataType |
getDataType() |
Column |
getIndexedColumn()
Returns the column I index.
|
abstract IndexLoader |
getIndexLoader() |
abstract RowIterator |
getInorderRowIterator(RowSource source)
Returns a
RowIteratorwhich is inorder traversal of keys, |
java.lang.String |
getName()
Returns my name.
|
abstract RowIterator |
getRowIterator(RowSource source,
Function fn,
java.lang.Object value)
Returns a
RowIteratorover the indexed rows, limited by the given
ComparisonOperator/value pair, using the default sort order. |
boolean |
isUnique()
Whether or not I allow duplicate values.
|
abstract void |
save(java.io.File dataDirectory) |
abstract void |
saveAfterTruncate(java.io.File dataDirectory) |
abstract boolean |
supportsFunction(Function fn)
Returns true iff
#getRowIterator(org.axiondb.RowSource,org.axiondb.ComparisonOperator,java.lang.Object)
can support the given operator, false otherwise. |
abstract void |
truncate() |
columnAdded, constraintAdded, constraintRemoved, rowDeleted, rowInserted, rowUpdatedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitchangeRowId, getTypecolumnAdded, constraintAdded, constraintRemoved, rowDeleted, rowInserted, rowUpdatedpublic BaseIndex(java.lang.String name,
Column column,
boolean unique)
public Column getIndexedColumn()
IndexgetIndexedColumn in interface Indexpublic abstract IndexLoader getIndexLoader()
getIndexLoader in interface Indexpublic abstract RowIterator getInorderRowIterator(RowSource source) throws AxionException
IndexRowIteratorwhich is inorder traversal of keys,getInorderRowIterator in interface Indexsource - table/view for which we need to get inorder traversalAxionExceptionpublic java.lang.String getName()
Indexpublic abstract RowIterator getRowIterator(RowSource source, Function fn, java.lang.Object value) throws AxionException
IndexRowIteratorover the indexed rows, limited by the given
ComparisonOperator/value pair, using the default sort order.getRowIterator in interface Indexvalue - the value to compare the indexed column toAxionExceptionpublic boolean isUnique()
Indexpublic abstract void save(java.io.File dataDirectory)
throws AxionException
save in interface IndexAxionExceptionpublic abstract void saveAfterTruncate(java.io.File dataDirectory)
throws AxionException
saveAfterTruncate in interface IndexAxionExceptionpublic abstract boolean supportsFunction(Function fn)
Index#getRowIterator(org.axiondb.RowSource,org.axiondb.ComparisonOperator,java.lang.Object)
can support the given operator, false otherwise.supportsFunction in interface Indexpublic abstract void truncate()
throws AxionException
truncate in interface IndexAxionExceptionprotected java.util.Comparator getComparator()
protected DataType getDataType()