public abstract class SingleColumnRestriction extends java.lang.Object implements SingleRestriction
| Modifier and Type | Field and Description |
|---|---|
protected ColumnDefinition |
columnDef
The definition of the column to which apply the restriction.
|
| Constructor and Description |
|---|
SingleColumnRestriction(ColumnDefinition columnDef) |
| Modifier and Type | Method and Description |
|---|---|
protected abstract SingleRestriction |
doMergeWith(SingleRestriction otherRestriction) |
java.util.List<ColumnDefinition> |
getColumnDefs()
Returns the column definitions in position order.
|
ColumnDefinition |
getFirstColumn()
Returns the definition of the first column.
|
ColumnDefinition |
getLastColumn()
Returns the definition of the last column.
|
boolean |
hasSupportingIndex(SecondaryIndexManager indexManager)
Check if the restriction is on indexed columns.
|
protected abstract boolean |
isSupportedBy(Index index)
Check if this type of restriction is supported by the specified index.
|
SingleRestriction |
mergeWith(SingleRestriction otherRestriction)
Merges this restriction with the specified one.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitappendBoundTo, appendTo, hasBound, isContains, isEQ, isIN, isInclusive, isLIKE, isMultiColumn, isNotNull, isSliceaddFunctionsTo, addRowFilterTo, isOnTokenprotected final ColumnDefinition columnDef
public SingleColumnRestriction(ColumnDefinition columnDef)
public java.util.List<ColumnDefinition> getColumnDefs()
RestrictiongetColumnDefs in interface Restrictionpublic ColumnDefinition getFirstColumn()
RestrictiongetFirstColumn in interface Restrictionpublic ColumnDefinition getLastColumn()
RestrictiongetLastColumn in interface Restrictionpublic boolean hasSupportingIndex(SecondaryIndexManager indexManager)
RestrictionhasSupportingIndex in interface RestrictionindexManager - the index managertrue if the restriction is on indexed columns, falsepublic final SingleRestriction mergeWith(SingleRestriction otherRestriction)
SingleRestrictionRestriction are immutable. Therefore merging two restrictions result in a new one. The reason behind this choice is that it allow a great flexibility in the way the merging can done while preventing any side effect.
mergeWith in interface SingleRestrictionotherRestriction - the restriction to merge into this oneprotected abstract SingleRestriction doMergeWith(SingleRestriction otherRestriction)
protected abstract boolean isSupportedBy(Index index)
index - the secondary indextrue this type of restriction is supported by the specified index,
false otherwise.Copyright © 2018 The Apache Software Foundation