public abstract class MultiColumnRestriction extends java.lang.Object implements SingleRestriction
| Modifier and Type | Class and Description | 
|---|---|
| static class  | MultiColumnRestriction.EQRestriction | 
| static class  | MultiColumnRestriction.INRestriction | 
| static class  | MultiColumnRestriction.InRestrictionWithMarkerAn IN restriction that uses a single marker for a set of IN values that are tuples. | 
| static class  | MultiColumnRestriction.InRestrictionWithValuesAn IN restriction that has a set of terms for in values. | 
| static class  | MultiColumnRestriction.NotNullRestriction | 
| static class  | MultiColumnRestriction.SliceRestriction | 
| Modifier and Type | Field and Description | 
|---|---|
| protected java.util.List<ColumnDefinition> | columnDefsThe columns to which the restriction apply. | 
| Constructor and Description | 
|---|
| MultiColumnRestriction(java.util.List<ColumnDefinition> columnDefs) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected abstract SingleRestriction | doMergeWith(SingleRestriction otherRestriction) | 
| java.util.List<ColumnDefinition> | getColumnDefs()Returns the column definitions in position order. | 
| protected java.lang.String | getColumnsInCommons(Restriction otherRestriction)Returns the names of the columns that are specified within this  Restrictionsand the other one
 as a comma separatedString. | 
| 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. | 
| boolean | isMultiColumn() | 
| protected abstract boolean | isSupportedBy(Index index)Check if this type of restriction is supported for 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, isNotNull, isSliceaddFunctionsTo, addRowFilterTo, isOnTokenprotected final java.util.List<ColumnDefinition> columnDefs
public MultiColumnRestriction(java.util.List<ColumnDefinition> columnDefs)
public boolean isMultiColumn()
isMultiColumn in interface SingleRestrictionpublic ColumnDefinition getFirstColumn()
RestrictiongetFirstColumn in interface Restrictionpublic ColumnDefinition getLastColumn()
RestrictiongetLastColumn in interface Restrictionpublic java.util.List<ColumnDefinition> getColumnDefs()
RestrictiongetColumnDefs in interface Restrictionpublic 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 final java.lang.String getColumnsInCommons(Restriction otherRestriction)
Restrictions and the other one
 as a comma separated String.otherRestriction - the other restrictionsRestrictions and the other one
 as a comma separated String.public final boolean hasSupportingIndex(SecondaryIndexManager indexManager)
RestrictionhasSupportingIndex in interface RestrictionindexManager - the index managertrue if the restriction is on indexed columns, falseprotected 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