org.apache.cassandra.db
Class ThreadSafeSortedColumns

java.lang.Object
  extended by java.util.AbstractMap<K,V>
      extended by java.util.concurrent.ConcurrentSkipListMap<java.nio.ByteBuffer,IColumn>
          extended by org.apache.cassandra.db.ThreadSafeSortedColumns
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<IColumn>, java.util.concurrent.ConcurrentMap<java.nio.ByteBuffer,IColumn>, java.util.concurrent.ConcurrentNavigableMap<java.nio.ByteBuffer,IColumn>, java.util.Map<java.nio.ByteBuffer,IColumn>, java.util.NavigableMap<java.nio.ByteBuffer,IColumn>, java.util.SortedMap<java.nio.ByteBuffer,IColumn>, ISortedColumns, IIterableColumns

public class ThreadSafeSortedColumns
extends java.util.concurrent.ConcurrentSkipListMap<java.nio.ByteBuffer,IColumn>
implements ISortedColumns

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.AbstractMap
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>
 
Nested classes/interfaces inherited from interface org.apache.cassandra.db.ISortedColumns
ISortedColumns.Factory
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Field Summary
static ISortedColumns.Factory factory
           
 
Method Summary
 void addAll(ISortedColumns cm, Allocator allocator)
          We need to go through each column in the column container and resolve it before adding
 void addColumn(IColumn column, Allocator allocator)
          Adds a column to this column map.
 ISortedColumns cloneMe()
          Shallow cloning of the column map.
static ISortedColumns.Factory factory()
           
 IColumn getColumn(java.nio.ByteBuffer name)
          Get a column given its name, returning null if the column is not present.
 java.util.SortedSet<java.nio.ByteBuffer> getColumnNames()
          Returns a set with the names of columns in this column map.
 AbstractType<?> getComparator()
           
 int getEstimatedColumnCount()
           
 ISortedColumns.Factory getFactory()
          Returns the factory used for this ISortedColumns implementation.
 java.util.Collection<IColumn> getReverseSortedColumns()
          Returns the columns of this column map as a collection.
 java.util.Collection<IColumn> getSortedColumns()
          Returns the columns of this column map as a collection.
 boolean isInsertReversed()
          Returns if this map only support inserts in reverse order.
 java.util.Iterator<IColumn> iterator()
           
 void removeColumn(java.nio.ByteBuffer name)
          Remove if present a column by name.
 boolean replace(IColumn oldColumn, IColumn newColumn)
          Replace oldColumn if present by newColumn.
 java.util.Iterator<IColumn> reverseIterator()
          Returns an iterator that iterates over the columns of this map in reverse order.
 
Methods inherited from class java.util.concurrent.ConcurrentSkipListMap
ceilingEntry, ceilingKey, clear, clone, comparator, containsKey, containsValue, descendingKeySet, descendingMap, entrySet, equals, firstEntry, firstKey, floorEntry, floorKey, get, headMap, headMap, higherEntry, higherKey, isEmpty, keySet, lastEntry, lastKey, lowerEntry, lowerKey, navigableKeySet, pollFirstEntry, pollLastEntry, put, putIfAbsent, remove, remove, replace, replace, size, subMap, subMap, tailMap, tailMap, values
 
Methods inherited from class java.util.AbstractMap
hashCode, putAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.cassandra.db.ISortedColumns
clear, isEmpty, size
 
Methods inherited from interface java.util.Map
hashCode, putAll
 

Field Detail

factory

public static final ISortedColumns.Factory factory
Method Detail

factory

public static ISortedColumns.Factory factory()

getComparator

public AbstractType<?> getComparator()
Specified by:
getComparator in interface IIterableColumns

getFactory

public ISortedColumns.Factory getFactory()
Description copied from interface: ISortedColumns
Returns the factory used for this ISortedColumns implementation.

Specified by:
getFactory in interface ISortedColumns

cloneMe

public ISortedColumns cloneMe()
Description copied from interface: ISortedColumns
Shallow cloning of the column map.

Specified by:
cloneMe in interface ISortedColumns

isInsertReversed

public boolean isInsertReversed()
Description copied from interface: ISortedColumns
Returns if this map only support inserts in reverse order.

Specified by:
isInsertReversed in interface ISortedColumns

addColumn

public void addColumn(IColumn column,
                      Allocator allocator)
Description copied from interface: ISortedColumns
Adds a column to this column map. If a column with the same name is already present in the map, it will be replaced by the newly added column.

Specified by:
addColumn in interface ISortedColumns

addAll

public void addAll(ISortedColumns cm,
                   Allocator allocator)
We need to go through each column in the column container and resolve it before adding

Specified by:
addAll in interface ISortedColumns

replace

public boolean replace(IColumn oldColumn,
                       IColumn newColumn)
Description copied from interface: ISortedColumns
Replace oldColumn if present by newColumn. Returns true if oldColumn was present and thus replaced. oldColumn and newColumn should have the same name.

Specified by:
replace in interface ISortedColumns

getColumn

public IColumn getColumn(java.nio.ByteBuffer name)
Description copied from interface: ISortedColumns
Get a column given its name, returning null if the column is not present.

Specified by:
getColumn in interface ISortedColumns

removeColumn

public void removeColumn(java.nio.ByteBuffer name)
Description copied from interface: ISortedColumns
Remove if present a column by name.

Specified by:
removeColumn in interface ISortedColumns

getSortedColumns

public java.util.Collection<IColumn> getSortedColumns()
Description copied from interface: ISortedColumns
Returns the columns of this column map as a collection. The columns in the returned collection should be sorted as the columns in this map.

Specified by:
getSortedColumns in interface ISortedColumns

getReverseSortedColumns

public java.util.Collection<IColumn> getReverseSortedColumns()
Description copied from interface: ISortedColumns
Returns the columns of this column map as a collection. The columns in the returned collection should be sorted in reverse order of the columns in this map.

Specified by:
getReverseSortedColumns in interface ISortedColumns

getColumnNames

public java.util.SortedSet<java.nio.ByteBuffer> getColumnNames()
Description copied from interface: ISortedColumns
Returns a set with the names of columns in this column map. The resulting set is sorted and the order is the one of the columns in this column map.

Specified by:
getColumnNames in interface ISortedColumns

getEstimatedColumnCount

public int getEstimatedColumnCount()
Specified by:
getEstimatedColumnCount in interface IIterableColumns

iterator

public java.util.Iterator<IColumn> iterator()
Specified by:
iterator in interface java.lang.Iterable<IColumn>

reverseIterator

public java.util.Iterator<IColumn> reverseIterator()
Description copied from interface: ISortedColumns
Returns an iterator that iterates over the columns of this map in reverse order.

Specified by:
reverseIterator in interface ISortedColumns


Copyright © 2011 The Apache Software Foundation