Interface Restriction
-
- All Known Subinterfaces:
Restrictions
,SingleRestriction
- All Known Implementing Classes:
MultiColumnRestriction
,MultiColumnRestriction.EQRestriction
,MultiColumnRestriction.INRestriction
,MultiColumnRestriction.InRestrictionWithMarker
,MultiColumnRestriction.InRestrictionWithValues
,MultiColumnRestriction.NotNullRestriction
,MultiColumnRestriction.SliceRestriction
,SingleColumnRestriction
,SingleColumnRestriction.ContainsRestriction
,SingleColumnRestriction.EQRestriction
,SingleColumnRestriction.INRestriction
,SingleColumnRestriction.InRestrictionWithMarker
,SingleColumnRestriction.InRestrictionWithValues
,SingleColumnRestriction.IsNotNullRestriction
,SingleColumnRestriction.LikeRestriction
,SingleColumnRestriction.SliceRestriction
,TokenRestriction
,TokenRestriction.EQRestriction
,TokenRestriction.SliceRestriction
public interface Restriction
Implementation of this class must be immutable.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
addFunctionsTo(java.util.List<Function> functions)
Adds all functions (native and user-defined) used by any component of the restriction to the specified list.void
addToRowFilter(RowFilter filter, IndexRegistry indexRegistry, QueryOptions options)
Adds to the specified row filter the expressions corresponding to thisRestriction
.java.util.List<ColumnMetadata>
getColumnDefs()
Returns the column definitions in position order.ColumnMetadata
getFirstColumn()
Returns the definition of the first column.ColumnMetadata
getLastColumn()
Returns the definition of the last column.boolean
hasSupportingIndex(IndexRegistry indexRegistry)
Check if the restriction is on indexed columns.default boolean
isOnToken()
boolean
needsFiltering(Index.Group indexGroup)
Returns whether this restriction would need filtering if the specified index group were used.
-
-
-
Method Detail
-
isOnToken
default boolean isOnToken()
-
getFirstColumn
ColumnMetadata getFirstColumn()
Returns the definition of the first column.- Returns:
- the definition of the first column.
-
getLastColumn
ColumnMetadata getLastColumn()
Returns the definition of the last column.- Returns:
- the definition of the last column.
-
getColumnDefs
java.util.List<ColumnMetadata> getColumnDefs()
Returns the column definitions in position order.- Returns:
- the column definitions in position order.
-
addFunctionsTo
void addFunctionsTo(java.util.List<Function> functions)
Adds all functions (native and user-defined) used by any component of the restriction to the specified list.- Parameters:
functions
- the list to add to
-
hasSupportingIndex
boolean hasSupportingIndex(IndexRegistry indexRegistry)
Check if the restriction is on indexed columns.- Parameters:
indexRegistry
- the index registry- Returns:
true
if the restriction is on indexed columns,false
-
needsFiltering
boolean needsFiltering(Index.Group indexGroup)
Returns whether this restriction would need filtering if the specified index group were used.- Parameters:
indexGroup
- an index group- Returns:
true
if this would need filtering ifindexGroup
were used,false
otherwise
-
addToRowFilter
void addToRowFilter(RowFilter filter, IndexRegistry indexRegistry, QueryOptions options)
Adds to the specified row filter the expressions corresponding to thisRestriction
.- Parameters:
filter
- the row filter to add expressions toindexRegistry
- the index registryoptions
- the query options
-
-