me.prettyprint.cassandra.service.template
Class SuperCfTemplate<K,SN,N>

java.lang.Object
  extended by me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate<K,SN>
      extended by me.prettyprint.cassandra.service.template.SuperCfTemplate<K,SN,N>
Direct Known Subclasses:
ThriftSuperCfTemplate

public abstract class SuperCfTemplate<K,SN,N>
extends AbstractColumnFamilyTemplate<K,SN>


Field Summary
protected  Serializer<N> subSerializer
           
 
Fields inherited from class me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate
activeSlicePredicate, ALL_COLUMNS_COUNT, ALL_COLUMNS_END, ALL_COLUMNS_START, batched, clock, columnFactory, columnFamily, columnParent, columnValueSerializers, exceptionsTranslator, keySerializer, keyspace, topSerializer
 
Constructor Summary
SuperCfTemplate(Keyspace keyspace, String columnFamily, Serializer<K> keySerializer, Serializer<SN> topSerializer, Serializer<N> subSerializer)
           
 
Method Summary
 int countColumns(K key)
           
 int countColumns(K key, SN start, SN end, int max)
          Counts columns in the specified range of a super column family
 int countSubColumns(K key, SN superColumnName)
           
 int countSubColumns(K key, SN superColumnName, N start, N end, int max)
          Counts child columns in the specified range of a children in a specified super column
 SuperCfUpdater<K,SN,N> createUpdater(K key)
           
 SuperCfUpdater<K,SN,N> createUpdater(K key, SN sColumnName)
           
 void deleteColumn(K key, SN sColumnName)
          Immediately delete the key and superColumn combination
 void deleteRow(K key)
          Immediately delete the row
protected abstract  SuperCfResult<K,SN,N> doExecuteMultigetSlice(List<K> keys, HSlicePredicate<SN> predicate)
           
protected abstract  SuperCfResult<K,SN,N> doExecuteSlice(K key, SN sColumnName, HSlicePredicate<SN> predicate)
           
 Serializer<N> getSubSerializer()
           
 boolean isColumnsExist(K key)
          Checks if there are any columns at a row specified by key in a super column family
 boolean isSubColumnsExist(K key, SN superColumnName)
          Checks if there are any columns at a row specified by key in a specific super column
<V> HColumn<N,V>
querySingleSubColumn(K key, SN columnName, N subColumnName, Serializer<V> valueSerializer)
           
 SuperCfResult<K,SN,N> querySuperColumn(K key, SN sColumnName)
           
 SuperCfResult<K,SN,N> querySuperColumns(K key)
           
 SuperCfResult<K,SN,N> querySuperColumns(K key, List<SN> sColumnNames)
           
<T> T
querySuperColumns(K key, List<SN> sColumnNames, SuperCfRowMapper<K,SN,N,T> mapper)
           
 SuperCfResult<K,SN,N> querySuperColumns(List<K> keys)
           
 SuperCfResult<K,SN,N> querySuperColumns(List<K> keys, List<SN> sColumnNames)
           
 void update(SuperCfUpdater<K,SN,N> updater)
          Calls SuperCfUpdater.updateInternal() and AbstractTemplateUpdater.update() in that order before invoking AbstractColumnFamilyTemplate.executeIfNotBatched(Mutator) on the underlying upater's Mutator
 
Methods inherited from class me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate
addColumn, createMutator, deleteColumn, deleteRow, executeBatch, executeIfNotBatched, executeIfNotBatched, getClock, getColumnFamily, getEffectiveClock, getKeySerializer, getTopSerializer, getValueSerializer, isBatched, setBatched, setClock, setColumnFactory, setCount, setExceptionsTranslator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

subSerializer

protected Serializer<N> subSerializer
Constructor Detail

SuperCfTemplate

public SuperCfTemplate(Keyspace keyspace,
                       String columnFamily,
                       Serializer<K> keySerializer,
                       Serializer<SN> topSerializer,
                       Serializer<N> subSerializer)
Method Detail

getSubSerializer

public Serializer<N> getSubSerializer()

isColumnsExist

public boolean isColumnsExist(K key)
Checks if there are any columns at a row specified by key in a super column family

Parameters:
key -
Returns:
true if columns exist

isSubColumnsExist

public boolean isSubColumnsExist(K key,
                                 SN superColumnName)
Checks if there are any columns at a row specified by key in a specific super column

Parameters:
key -
superColumnName -
subSerializer - the column name serializer of the child columns
Returns:
true if columns exist

countColumns

public int countColumns(K key)
Parameters:
key -
Returns:
the number of columns in a super column family at the specified row key

countSubColumns

public int countSubColumns(K key,
                           SN superColumnName)
Parameters:
key -
superColumnName -
Returns:
the number of child columns in a specified super column

countColumns

public int countColumns(K key,
                        SN start,
                        SN end,
                        int max)
Counts columns in the specified range of a super column family

Parameters:
key -
start -
end -
max -
Returns:

countSubColumns

public int countSubColumns(K key,
                           SN superColumnName,
                           N start,
                           N end,
                           int max)
Counts child columns in the specified range of a children in a specified super column

Type Parameters:
SUBCOL -
Parameters:
key -
superColumnName -
start -
end -
max -
subSerializer -
Returns:

querySingleSubColumn

public <V> HColumn<N,V> querySingleSubColumn(K key,
                                             SN columnName,
                                             N subColumnName,
                                             Serializer<V> valueSerializer)

querySuperColumns

public SuperCfResult<K,SN,N> querySuperColumns(K key,
                                               List<SN> sColumnNames)

querySuperColumns

public SuperCfResult<K,SN,N> querySuperColumns(List<K> keys,
                                               List<SN> sColumnNames)

querySuperColumns

public SuperCfResult<K,SN,N> querySuperColumns(List<K> keys)

querySuperColumns

public <T> T querySuperColumns(K key,
                               List<SN> sColumnNames,
                               SuperCfRowMapper<K,SN,N,T> mapper)

querySuperColumns

public SuperCfResult<K,SN,N> querySuperColumns(K key)

querySuperColumn

public SuperCfResult<K,SN,N> querySuperColumn(K key,
                                              SN sColumnName)

createUpdater

public SuperCfUpdater<K,SN,N> createUpdater(K key,
                                            SN sColumnName)

createUpdater

public SuperCfUpdater<K,SN,N> createUpdater(K key)

update

public void update(SuperCfUpdater<K,SN,N> updater)
Calls SuperCfUpdater.updateInternal() and AbstractTemplateUpdater.update() in that order before invoking AbstractColumnFamilyTemplate.executeIfNotBatched(Mutator) on the underlying upater's Mutator

Parameters:
updater -

deleteColumn

public void deleteColumn(K key,
                         SN sColumnName)
Immediately delete the key and superColumn combination

Overrides:
deleteColumn in class AbstractColumnFamilyTemplate<K,SN>

deleteRow

public void deleteRow(K key)
Immediately delete the row

Overrides:
deleteRow in class AbstractColumnFamilyTemplate<K,SN>

doExecuteSlice

protected abstract SuperCfResult<K,SN,N> doExecuteSlice(K key,
                                                        SN sColumnName,
                                                        HSlicePredicate<SN> predicate)

doExecuteMultigetSlice

protected abstract SuperCfResult<K,SN,N> doExecuteMultigetSlice(List<K> keys,
                                                                HSlicePredicate<SN> predicate)


Copyright © 2011. All Rights Reserved.