org.apache.cassandra.db.filter

## Class ExtendedFilter.WithClauses

- java.lang.Object
- - org.apache.cassandra.db.filter.ExtendedFilter
  - - org.apache.cassandra.db.filter.ExtendedFilter.WithClauses

- Enclosing class:
    ExtendedFilter

      public static class ExtendedFilter.WithClauses
      extends ExtendedFilter

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.cassandra.db.filter.ExtendedFilter

      `ExtendedFilter.WithClauses`

  - ### Field Summary

    - ### Fields inherited from class org.apache.cassandra.db.filter.ExtendedFilter

      `cfs, dataRange, timestamp`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WithClauses(ColumnFamilyStore cfs, DataRange range, java.util.List<IndexExpression> clause, int maxResults, boolean countCQL3Rows, long timestamp)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `IDiskAtomFilter` | `columnFilter(java.nio.ByteBuffer key)`
    `java.util.List<IndexExpression>` | `getClause()`
    `IDiskAtomFilter` | `getExtraFilter(DecoratedKey rowKey, ColumnFamily data)` Returns a filter to query the columns from the clause that the initial slice filter may not have caught.
    `boolean` | `isSatisfiedBy(DecoratedKey rowKey, ColumnFamily data, Composite prefix, java.nio.ByteBuffer collectionElement)`
    `ColumnFamily` | `prune(DecoratedKey rowKey, ColumnFamily data)`
    `java.lang.String` | `toString()`

    - ### Methods inherited from class org.apache.cassandra.db.filter.ExtendedFilter

      `create, currentLimit, ignoreTombstonedPartitions, lastCounted, maxColumns, maxRows, satisfies, updateFilter`

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

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

- - ### Constructor Detail

    - #### WithClauses

          public WithClauses(ColumnFamilyStore cfs,
                             DataRange range,
                             java.util.List<IndexExpression> clause,
                             int maxResults,
                             boolean countCQL3Rows,
                             long timestamp)

  - ### Method Detail

    - #### columnFilter

          public IDiskAtomFilter columnFilter(java.nio.ByteBuffer key)

      Overrides:
        `columnFilter` in class `ExtendedFilter`

    - #### getClause

          public java.util.List<IndexExpression> getClause()

      Specified by:
        `getClause` in class `ExtendedFilter`

    - #### getExtraFilter

          public IDiskAtomFilter getExtraFilter(DecoratedKey rowKey,
                                                ColumnFamily data)

      Description copied from class: `ExtendedFilter`
      Returns a filter to query the columns from the clause that the initial slice filter may not have caught.
      Specified by:
        `getExtraFilter` in class `ExtendedFilter`
        `data` - the data retrieve by the initial filter
      Returns:
        a filter or null if there can't be any columns we missed with our initial filter (typically if it was a names query, or a slice of the entire row)

    - #### prune

          public ColumnFamily prune(DecoratedKey rowKey,
                                    ColumnFamily data)

      Specified by:
        `prune` in class `ExtendedFilter`
      Returns:
        data pruned down to the columns originally asked for

    - #### isSatisfiedBy

          public boolean isSatisfiedBy(DecoratedKey rowKey,
                                       ColumnFamily data,
                                       Composite prefix,
                                       java.nio.ByteBuffer collectionElement)

      Specified by:
        `isSatisfiedBy` in class `ExtendedFilter`
      Returns:
        true if the provided data satisfies all the expressions from the clause of this filter.

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `ExtendedFilter`

Copyright © 2018 The Apache Software Foundation