org.apache.cassandra.index.sasi.plan

## Class QueryController

- java.lang.Object
- - org.apache.cassandra.index.sasi.plan.QueryController

-     public class QueryController
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `QueryController(ColumnFamilyStore cfs, PartitionRangeReadCommand command, long timeQuotaMs)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkpoint()`
    `DataRange` | `dataRange()`
    `void` | `finish()`
    `java.util.Collection<RowFilter.Expression>` | `getExpressions()`
    `ColumnIndex` | `getIndex(RowFilter.Expression expression)`
    `RangeIterator.Builder<java.lang.Long,Token>` | `getIndexes(Operation.OperationType op, java.util.Collection<Expression> expressions)` Build a range iterator from the given list of expressions by applying given operation (OR/AND).
    `AbstractType<?>` | `getKeyValidator()`
    `UnfilteredRowIterator` | `getPartition(DecoratedKey key, ReadExecutionController executionController)`
    `boolean` | `isForThrift()`
    `CFMetaData` | `metadata()`
    `void` | `releaseIndexes(Operation operation)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### QueryController

          public QueryController(ColumnFamilyStore cfs,
                                 PartitionRangeReadCommand command,
                                 long timeQuotaMs)

  - ### Method Detail

    - #### isForThrift

          public boolean isForThrift()

    - #### metadata

          public CFMetaData metadata()

    - #### getExpressions

          public java.util.Collection<RowFilter.Expression> getExpressions()

    - #### dataRange

          public DataRange dataRange()

    - #### getKeyValidator

          public AbstractType<?> getKeyValidator()

    - #### getIndex

          public ColumnIndex getIndex(RowFilter.Expression expression)

    - #### getPartition

          public UnfilteredRowIterator getPartition(DecoratedKey key,
                                                    ReadExecutionController executionController)

    - #### getIndexes

          public RangeIterator.Builder<java.lang.Long,Token> getIndexes(Operation.OperationType op,
                                                                        java.util.Collection<Expression> expressions)

      Build a range iterator from the given list of expressions by applying given operation (OR/AND). Building of such iterator involves index search, results of which are persisted in the internal resources list and can be released later via `releaseIndexes(Operation)`.
      Parameters:
        `op` - The operation type to coalesce expressions with.
        `expressions` - The expressions to build range iterator from (expressions with not results are ignored).
      Returns:
        The range builder based on given expressions and operation type.

    - #### checkpoint

          public void checkpoint()

    - #### releaseIndexes

          public void releaseIndexes(Operation operation)

    - #### finish

          public void finish()

Copyright © 2018 The Apache Software Foundation