me.prettyprint.cassandra.model
Class IndexedSlicesQuery<K,N,V>

java.lang.Object
  extended by me.prettyprint.cassandra.model.AbstractBasicQuery<K,N,T>
      extended by me.prettyprint.cassandra.model.AbstractQuery<K,N,V,T>
          extended by me.prettyprint.cassandra.model.AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>
              extended by me.prettyprint.cassandra.model.IndexedSlicesQuery<K,N,V>
All Implemented Interfaces:
Query<OrderedRows<K,N,V>>

public class IndexedSlicesQuery<K,N,V>
extends AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>

Uses new secondary indexes. Your CF must be configured for such to use this. The following creates an Indexed CF with the "birthday" column indexed (where birthdate represents a timestamp as it is validated by the LongType):

         - name: Indexed1
           column_metadata:
             - name: birthdate
               validator_class: LongType
               index_type: KEYS
 

Author:
zznate (nate@riptano.com)

Field Summary
 
Fields inherited from class me.prettyprint.cassandra.model.AbstractSliceQuery
slicePredicate
 
Fields inherited from class me.prettyprint.cassandra.model.AbstractQuery
valueSerializer
 
Fields inherited from class me.prettyprint.cassandra.model.AbstractBasicQuery
columnFamilyName, columnNameSerializer, keySerializer, keyspace
 
Constructor Summary
IndexedSlicesQuery(Keyspace k, Serializer<K> keySerializer, Serializer<N> nameSerializer, Serializer<V> valueSerializer)
           
 
Method Summary
 IndexedSlicesQuery<K,N,V> addEqualsExpression(N columnName, V columnValue)
           
 IndexedSlicesQuery<K,N,V> addGteExpression(N columnName, V columnValue)
           
 IndexedSlicesQuery<K,N,V> addGtExpression(N columnName, V columnValue)
           
 IndexedSlicesQuery<K,N,V> addLteExpression(N columnName, V columnValue)
           
 IndexedSlicesQuery<K,N,V> addLtExpression(N columnName, V columnValue)
           
 QueryResult<OrderedRows<K,N,V>> execute()
           
 IndexedSlicesQuery<K,N,V> setColumnFamily(String cf)
           
 IndexedSlicesQuery<K,N,V> setColumnNames(Collection<N> columnNames)
          Sets the column names to be retrieved by this query
 IndexedSlicesQuery<K,N,V> setColumnNames(N... columnNames)
          Sets the column names to be retrieved by this query
 IndexedSlicesQuery<K,N,V> setRange(N start, N finish, boolean reversed, int count)
          Set a predicate of start/finish to retrieve a list of columns in this range.
 IndexedSlicesQuery<K,N,V> setReturnKeysOnly()
          Wraps the underlying call to HSlicePredicate.setKeysOnlyPredicate() Use this for a substantial performance increase when you only need the keys returned
 IndexedSlicesQuery<K,N,V> setRowCount(int rowCount)
           
 IndexedSlicesQuery<K,N,V> setStartKey(K startKey)
           
 
Methods inherited from class me.prettyprint.cassandra.model.AbstractSliceQuery
getColumnNames, getPredicate, toStringInternal
 
Methods inherited from class me.prettyprint.cassandra.model.AbstractQuery
getValueSerializer, setValueSerializer
 
Methods inherited from class me.prettyprint.cassandra.model.AbstractBasicQuery
getColumnNameSerializer, getKeySerializer, setColumnNameSerializer, setKeySerializer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IndexedSlicesQuery

public IndexedSlicesQuery(Keyspace k,
                          Serializer<K> keySerializer,
                          Serializer<N> nameSerializer,
                          Serializer<V> valueSerializer)
Method Detail

addEqualsExpression

public IndexedSlicesQuery<K,N,V> addEqualsExpression(N columnName,
                                                     V columnValue)

addLteExpression

public IndexedSlicesQuery<K,N,V> addLteExpression(N columnName,
                                                  V columnValue)

addGteExpression

public IndexedSlicesQuery<K,N,V> addGteExpression(N columnName,
                                                  V columnValue)

addLtExpression

public IndexedSlicesQuery<K,N,V> addLtExpression(N columnName,
                                                 V columnValue)

addGtExpression

public IndexedSlicesQuery<K,N,V> addGtExpression(N columnName,
                                                 V columnValue)

setColumnNames

public IndexedSlicesQuery<K,N,V> setColumnNames(Collection<N> columnNames)
Description copied from class: AbstractSliceQuery
Sets the column names to be retrieved by this query

Overrides:
setColumnNames in class AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>

setColumnNames

public IndexedSlicesQuery<K,N,V> setColumnNames(N... columnNames)
Description copied from class: AbstractSliceQuery
Sets the column names to be retrieved by this query

Overrides:
setColumnNames in class AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>

setRange

public IndexedSlicesQuery<K,N,V> setRange(N start,
                                          N finish,
                                          boolean reversed,
                                          int count)
Description copied from class: AbstractSliceQuery
Set a predicate of start/finish to retrieve a list of columns in this range.

Overrides:
setRange in class AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>
Parameters:
start - Start key
finish - End key
Returns:

setReturnKeysOnly

public IndexedSlicesQuery<K,N,V> setReturnKeysOnly()
Description copied from class: AbstractSliceQuery
Wraps the underlying call to HSlicePredicate.setKeysOnlyPredicate() Use this for a substantial performance increase when you only need the keys returned

Overrides:
setReturnKeysOnly in class AbstractSliceQuery<K,N,V,OrderedRows<K,N,V>>

setStartKey

public IndexedSlicesQuery<K,N,V> setStartKey(K startKey)

setColumnFamily

public IndexedSlicesQuery<K,N,V> setColumnFamily(String cf)
Overrides:
setColumnFamily in class AbstractBasicQuery<K,N,OrderedRows<K,N,V>>

setRowCount

public IndexedSlicesQuery<K,N,V> setRowCount(int rowCount)

execute

public QueryResult<OrderedRows<K,N,V>> execute()


Copyright © 2011. All Rights Reserved.