## org.apache.cassandra.thrift
Class CassandraServer

    java.lang.Object
      org.apache.cassandra.thrift.CassandraServer

All Implemented Interfaces:
  Cassandra.Iface

    public class CassandraServer

extends java.lang.Object
implements Cassandra.Iface

Field Summary
`java.lang.ThreadLocal<ClientState>` `clientState`

Constructor Summary
`CassandraServer()`

Method Summary
`void` `add(java.nio.ByteBuffer key, ColumnParent column_parent, CounterColumn column, ConsistencyLevel consistency_level)` Increment or decrement a counter.
`void` `batch_mutate(java.util.Map<java.nio.ByteBuffer,java.util.Map<java.lang.String,java.util.List<Mutation>>> mutation_map, ConsistencyLevel consistency_level)` Mutate many columns or super columns for many row keys.
`java.lang.String` `describe_cluster_name()` get the cluster name
`KsDef` `describe_keyspace(java.lang.String table)` describe specified keyspace
`java.util.List<KsDef>` `describe_keyspaces()` list the defined keyspaces in this cluster
`java.lang.String` `describe_partitioner()` returns the partitioner used by this cluster

`java.util.List<TokenRange>`

`describe_ring(java.lang.String keyspace)`
get the token ring: a map of ranges to host addresses, represented as a set of TokenRange instead of a map from range to list of endpoints, because you can't use Thrift structs as map keys: https://issues.apache.org/jira/browse/THRIFT-162 for the same reason, we can't return a set here, even though order is neither important nor predictable.

`java.util.Map<java.lang.String,java.util.List<java.lang.String>>` `describe_schema_versions()` for each schema version present in the cluster, returns a list of nodes at that version.
`java.lang.String` `describe_snitch()` returns the snitch used by this cluster
`java.util.List<java.lang.String>` `describe_splits(java.lang.String cfName, java.lang.String start_token, java.lang.String end_token, int keys_per_split)` experimental API for hadoop/parallel query support.
`java.lang.String` `describe_version()` get the thrift api version
`CqlResult` `execute_cql_query(java.nio.ByteBuffer query, Compression compression)` Executes a CQL (Cassandra Query Language) statement and returns a CqlResult containing the results.
`int` `get_count(java.nio.ByteBuffer key, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)` returns the number of columns matching `predicate` for a particular `key`, `ColumnFamily` and optionally `SuperColumn`.
`java.util.List<KeySlice>` `get_indexed_slices(ColumnParent column_parent, IndexClause index_clause, SlicePredicate column_predicate, ConsistencyLevel consistency_level)` Returns the subset of columns specified in SlicePredicate for the rows matching the IndexClause
`java.util.List<KeySlice>` `get_range_slices(ColumnParent column_parent, SlicePredicate predicate, KeyRange range, ConsistencyLevel consistency_level)` returns a subset of columns for a contiguous range of keys.
`java.util.List<ColumnOrSuperColumn>` `get_slice(java.nio.ByteBuffer key, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)` Get the group of columns contained by column_parent (either a ColumnFamily name or a ColumnFamily/SuperColumn name pair) specified by the given SlicePredicate.
`ColumnOrSuperColumn` `get(java.nio.ByteBuffer key, ColumnPath column_path, ConsistencyLevel consistency_level)` Get the Column or SuperColumn at the given column_path.
`void` `insert(java.nio.ByteBuffer key, ColumnParent column_parent, Column column, ConsistencyLevel consistency_level)` Insert a Column at the given column_parent.column_family and optional column_parent.super_column.
`void` `login(AuthenticationRequest auth_request)`
`java.util.Map<java.nio.ByteBuffer,java.lang.Integer>` `multiget_count(java.util.List<java.nio.ByteBuffer> keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)` Perform a get_count in parallel on the given list<binary> keys.
`java.util.Map<java.nio.ByteBuffer,java.util.List<ColumnOrSuperColumn>>` `multiget_slice(java.util.List<java.nio.ByteBuffer> keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)` Performs a get_slice for column_parent and predicate for the given keys in parallel.
`protected java.util.Map<DecoratedKey,ColumnFamily>` `readColumnFamily(java.util.List<ReadCommand> commands, ConsistencyLevel consistency_level)`
`void` `remove_counter(java.nio.ByteBuffer key, ColumnPath path, ConsistencyLevel consistency_level)` Remove a counter at the specified location.
`void` `remove(java.nio.ByteBuffer key, ColumnPath column_path, long timestamp, ConsistencyLevel consistency_level)` Remove data from the row specified by key at the granularity specified by column_path, and the given timestamp.
`void` `set_keyspace(java.lang.String keyspace)`
`ClientState` `state()`
`java.lang.String` `system_add_column_family(CfDef cf_def)` adds a column family.
`java.lang.String` `system_add_keyspace(KsDef ks_def)` adds a keyspace and any column families that are part of it.
`java.lang.String` `system_drop_column_family(java.lang.String column_family)` drops a column family.
`java.lang.String` `system_drop_keyspace(java.lang.String keyspace)` drops a keyspace and any column families that are part of it.
`java.lang.String` `system_update_column_family(CfDef cf_def)` updates properties of a column family.
`java.lang.String` `system_update_keyspace(KsDef ks_def)` update an existing keyspace, but do not allow column family modifications.
`java.util.List<ColumnOrSuperColumn>` `thriftifyColumns(java.util.Collection<IColumn> columns, boolean reverseOrder)`
`java.util.List<CounterColumn>` `thriftifyCounterSubColumns(java.util.Collection<IColumn> columns)`
`java.util.List<Column>` `thriftifySubColumns(java.util.Collection<IColumn> columns)`
`void` `truncate(java.lang.String cfname)` Truncate will mark and entire column family as deleted.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### clientState

    public final java.lang.ThreadLocal<ClientState> clientState

Constructor Detail

### CassandraServer

    public CassandraServer()

Method Detail

### state

    public ClientState state()

### readColumnFamily

    protected java.util.Map<DecoratedKey,ColumnFamily> readColumnFamily(java.util.List<ReadCommand> commands,
                                                                        ConsistencyLevel consistency_level)
                                                                 throws InvalidRequestException,
                                                                        UnavailableException,
                                                                        TimedOutException

  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### thriftifySubColumns

    public java.util.List<Column> thriftifySubColumns(java.util.Collection<IColumn> columns)

### thriftifyCounterSubColumns

    public java.util.List<CounterColumn> thriftifyCounterSubColumns(java.util.Collection<IColumn> columns)

### thriftifyColumns

    public java.util.List<ColumnOrSuperColumn> thriftifyColumns(java.util.Collection<IColumn> columns,
                                                                boolean reverseOrder)

### get_slice

    public java.util.List<ColumnOrSuperColumn> get_slice(java.nio.ByteBuffer key,
                                                         ColumnParent column_parent,
                                                         SlicePredicate predicate,
                                                         ConsistencyLevel consistency_level)
                                                  throws InvalidRequestException,
                                                         UnavailableException,
                                                         TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Get the group of columns contained by column_parent (either a ColumnFamily name or a ColumnFamily/SuperColumn name pair) specified by the given SlicePredicate. If no matching values are found, an empty list is returned.

  Specified by:
    `get_slice` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### multiget_slice

    public java.util.Map<java.nio.ByteBuffer,java.util.List<ColumnOrSuperColumn>> multiget_slice(java.util.List<java.nio.ByteBuffer> keys,
                                                                                                 ColumnParent column_parent,
                                                                                                 SlicePredicate predicate,
                                                                                                 ConsistencyLevel consistency_level)
                                                                                          throws InvalidRequestException,
                                                                                                 UnavailableException,
                                                                                                 TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Performs a get_slice for column_parent and predicate for the given keys in parallel.

  Specified by:
    `multiget_slice` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### get

    public ColumnOrSuperColumn get(java.nio.ByteBuffer key,
                                   ColumnPath column_path,
                                   ConsistencyLevel consistency_level)
                            throws InvalidRequestException,
                                   NotFoundException,
                                   UnavailableException,
                                   TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Get the Column or SuperColumn at the given column_path. If no value is present, NotFoundException is thrown. (This is the only method that can throw an exception under non-failure conditions.)

  Specified by:
    `get` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `NotFoundException`
    `UnavailableException`
    `TimedOutException`

### get_count

    public int get_count(java.nio.ByteBuffer key,
                         ColumnParent column_parent,
                         SlicePredicate predicate,
                         ConsistencyLevel consistency_level)
                  throws InvalidRequestException,
                         UnavailableException,
                         TimedOutException

  Description copied from interface: `Cassandra.Iface`
  returns the number of columns matching `predicate` for a particular `key`, `ColumnFamily` and optionally `SuperColumn`.

  Specified by:
    `get_count` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### multiget_count

    public java.util.Map<java.nio.ByteBuffer,java.lang.Integer> multiget_count(java.util.List<java.nio.ByteBuffer> keys,
                                                                               ColumnParent column_parent,
                                                                               SlicePredicate predicate,
                                                                               ConsistencyLevel consistency_level)
                                                                        throws InvalidRequestException,
                                                                               UnavailableException,
                                                                               TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Perform a get_count in parallel on the given list<binary> keys. The return value maps keys to the count found.

  Specified by:
    `multiget_count` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### insert

    public void insert(java.nio.ByteBuffer key,
                       ColumnParent column_parent,
                       Column column,
                       ConsistencyLevel consistency_level)
                throws InvalidRequestException,
                       UnavailableException,
                       TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Insert a Column at the given column_parent.column_family and optional column_parent.super_column.

  Specified by:
    `insert` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### batch_mutate

    public void batch_mutate(java.util.Map<java.nio.ByteBuffer,java.util.Map<java.lang.String,java.util.List<Mutation>>> mutation_map,
                             ConsistencyLevel consistency_level)
                      throws InvalidRequestException,
                             UnavailableException,
                             TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Mutate many columns or super columns for many row keys. See also: Mutation. mutation_map maps key to column family to a list of Mutation objects to take place at that scope. *

  Specified by:
    `batch_mutate` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### remove

    public void remove(java.nio.ByteBuffer key,
                       ColumnPath column_path,
                       long timestamp,
                       ConsistencyLevel consistency_level)
                throws InvalidRequestException,
                       UnavailableException,
                       TimedOutException

  Description copied from interface: `Cassandra.Iface`
  Remove data from the row specified by key at the granularity specified by column_path, and the given timestamp. Note that all the values in column_path besides column_path.column_family are truly optional: you can remove the entire row by just specifying the ColumnFamily, or you can remove a SuperColumn or a single Column by specifying those levels too.

  Specified by:
    `remove` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`

### describe_keyspace

    public KsDef describe_keyspace(java.lang.String table)
                            throws NotFoundException,
                                   InvalidRequestException

  Description copied from interface: `Cassandra.Iface`
  describe specified keyspace

  Specified by:
    `describe_keyspace` in interface `Cassandra.Iface`
  Throws:
    `NotFoundException`
    `InvalidRequestException`

### get_range_slices

    public java.util.List<KeySlice> get_range_slices(ColumnParent column_parent,
                                                     SlicePredicate predicate,
                                                     KeyRange range,
                                                     ConsistencyLevel consistency_level)
                                              throws InvalidRequestException,
                                                     UnavailableException,
                                                     org.apache.thrift.TException,
                                                     TimedOutException

  Description copied from interface: `Cassandra.Iface`
  returns a subset of columns for a contiguous range of keys.

  Specified by:
    `get_range_slices` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `org.apache.thrift.TException`
    `TimedOutException`

### get_indexed_slices

    public java.util.List<KeySlice> get_indexed_slices(ColumnParent column_parent,
                                                       IndexClause index_clause,
                                                       SlicePredicate column_predicate,
                                                       ConsistencyLevel consistency_level)
                                                throws InvalidRequestException,
                                                       UnavailableException,
                                                       TimedOutException,
                                                       org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  Returns the subset of columns specified in SlicePredicate for the rows matching the IndexClause

  Specified by:
    `get_indexed_slices` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`
    `org.apache.thrift.TException`

### describe_keyspaces

    public java.util.List<KsDef> describe_keyspaces()
                                             throws org.apache.thrift.TException,
                                                    InvalidRequestException

  Description copied from interface: `Cassandra.Iface`
  list the defined keyspaces in this cluster

  Specified by:
    `describe_keyspaces` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`
    `InvalidRequestException`

### describe_cluster_name

    public java.lang.String describe_cluster_name()
                                           throws org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  get the cluster name

  Specified by:
    `describe_cluster_name` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`

### describe_version

    public java.lang.String describe_version()
                                      throws org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  get the thrift api version

  Specified by:
    `describe_version` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`

### describe_ring

    public java.util.List<TokenRange> describe_ring(java.lang.String keyspace)
                                             throws InvalidRequestException

  Description copied from interface: `Cassandra.Iface`
  get the token ring: a map of ranges to host addresses, represented as a set of TokenRange instead of a map from range to list of endpoints, because you can't use Thrift structs as map keys: https://issues.apache.org/jira/browse/THRIFT-162 for the same reason, we can't return a set here, even though order is neither important nor predictable.

  Specified by:
    `describe_ring` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`

### describe_partitioner

    public java.lang.String describe_partitioner()
                                          throws org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  returns the partitioner used by this cluster

  Specified by:
    `describe_partitioner` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`

### describe_snitch

    public java.lang.String describe_snitch()
                                     throws org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  returns the snitch used by this cluster

  Specified by:
    `describe_snitch` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`

### describe_splits

    public java.util.List<java.lang.String> describe_splits(java.lang.String cfName,
                                                            java.lang.String start_token,
                                                            java.lang.String end_token,
                                                            int keys_per_split)
                                                     throws org.apache.thrift.TException,
                                                            InvalidRequestException

  Description copied from interface: `Cassandra.Iface`
  experimental API for hadoop/parallel query support. may change violently and without warning. returns list of token strings such that first subrange is (list[0], list[1]], next is (list[1], list[2]], etc.

  Specified by:
    `describe_splits` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`
    `InvalidRequestException`

### login

    public void login(AuthenticationRequest auth_request)
               throws AuthenticationException,
                      AuthorizationException,
                      org.apache.thrift.TException

  Specified by:
    `login` in interface `Cassandra.Iface`
  Throws:
    `AuthenticationException`
    `AuthorizationException`
    `org.apache.thrift.TException`

### system_add_column_family

    public java.lang.String system_add_column_family(CfDef cf_def)
                                              throws InvalidRequestException,
                                                     SchemaDisagreementException,
                                                     org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  adds a column family. returns the new schema id.

  Specified by:
    `system_add_column_family` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

### system_drop_column_family

    public java.lang.String system_drop_column_family(java.lang.String column_family)
                                               throws InvalidRequestException,
                                                      SchemaDisagreementException,
                                                      org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  drops a column family. returns the new schema id.

  Specified by:
    `system_drop_column_family` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

### system_add_keyspace

    public java.lang.String system_add_keyspace(KsDef ks_def)
                                         throws InvalidRequestException,
                                                SchemaDisagreementException,
                                                org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  adds a keyspace and any column families that are part of it. returns the new schema id.

  Specified by:
    `system_add_keyspace` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

### system_drop_keyspace

    public java.lang.String system_drop_keyspace(java.lang.String keyspace)
                                          throws InvalidRequestException,
                                                 SchemaDisagreementException,
                                                 org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  drops a keyspace and any column families that are part of it. returns the new schema id.

  Specified by:
    `system_drop_keyspace` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

### system_update_keyspace

    public java.lang.String system_update_keyspace(KsDef ks_def)
                                            throws InvalidRequestException,
                                                   SchemaDisagreementException,
                                                   org.apache.thrift.TException

  update an existing keyspace, but do not allow column family modifications.

  Specified by:
    `system_update_keyspace` in interface `Cassandra.Iface`
  Throws:
    `SchemaDisagreementException`
    `InvalidRequestException`
    `org.apache.thrift.TException`

### system_update_column_family

    public java.lang.String system_update_column_family(CfDef cf_def)
                                                 throws InvalidRequestException,
                                                        SchemaDisagreementException,
                                                        org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  updates properties of a column family. returns the new schema id.

  Specified by:
    `system_update_column_family` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

### truncate

    public void truncate(java.lang.String cfname)
                  throws InvalidRequestException,
                         UnavailableException,
                         org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  Truncate will mark and entire column family as deleted. From the user's perspective a successful call to truncate will result complete data deletion from cfname. Internally, however, disk space will not be immediatily released, as with all deletes in cassandra, this one only marks the data as deleted. The operation succeeds only if all hosts in the cluster at available and will throw an UnavailableException if some hosts are down.

  Specified by:
    `truncate` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `org.apache.thrift.TException`

### set_keyspace

    public void set_keyspace(java.lang.String keyspace)
                      throws InvalidRequestException,
                             org.apache.thrift.TException

  Specified by:
    `set_keyspace` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `org.apache.thrift.TException`

### describe_schema_versions

    public java.util.Map<java.lang.String,java.util.List<java.lang.String>> describe_schema_versions()
                                                                                              throws org.apache.thrift.TException,
                                                                                                     InvalidRequestException

  Description copied from interface: `Cassandra.Iface`
  for each schema version present in the cluster, returns a list of nodes at that version. hosts that do not respond will be under the key DatabaseDescriptor.INITIAL_VERSION. the cluster is all on the same version if the size of the map is 1.

  Specified by:
    `describe_schema_versions` in interface `Cassandra.Iface`
  Throws:
    `org.apache.thrift.TException`
    `InvalidRequestException`

### add

    public void add(java.nio.ByteBuffer key,
                    ColumnParent column_parent,
                    CounterColumn column,
                    ConsistencyLevel consistency_level)
             throws InvalidRequestException,
                    UnavailableException,
                    TimedOutException,
                    org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  Increment or decrement a counter.

  Specified by:
    `add` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`
    `org.apache.thrift.TException`

### remove_counter

    public void remove_counter(java.nio.ByteBuffer key,
                               ColumnPath path,
                               ConsistencyLevel consistency_level)
                        throws InvalidRequestException,
                               UnavailableException,
                               TimedOutException,
                               org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  Remove a counter at the specified location. Note that counters have limited support for deletes: if you remove a counter, you must wait to issue any following update until the delete has reached all the nodes and all of them have been fully compacted.

  Specified by:
    `remove_counter` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`
    `org.apache.thrift.TException`

### execute_cql_query

    public CqlResult execute_cql_query(java.nio.ByteBuffer query,
                                       Compression compression)
                                throws InvalidRequestException,
                                       UnavailableException,
                                       TimedOutException,
                                       SchemaDisagreementException,
                                       org.apache.thrift.TException

  Description copied from interface: `Cassandra.Iface`
  Executes a CQL (Cassandra Query Language) statement and returns a CqlResult containing the results.

  Specified by:
    `execute_cql_query` in interface `Cassandra.Iface`
  Throws:
    `InvalidRequestException`
    `UnavailableException`
    `TimedOutException`
    `SchemaDisagreementException`
    `org.apache.thrift.TException`

Copyright © 2011 The Apache Software Foundation