You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ee...@apache.org on 2010/01/05 21:34:05 UTC

svn commit: r896208 - in /incubator/cassandra/trunk/src/java/org/apache/cassandra: cli/ db/ glue/ locator/ service/

Author: eevans
Date: Tue Jan  5 20:34:04 2010
New Revision: 896208

URL: http://svn.apache.org/viewvc?rev=896208&view=rev
Log:
use factories to create Thrift types

Patch by Ted Zlatanov; reviewed by eevans for CASSANDRA-547

Added:
    incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/
    incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/ThriftGlue.java
Modified:
    incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RangeSliceCommand.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ThriftValidation.java

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java Tue Jan  5 20:34:04 2010
@@ -22,6 +22,7 @@
 import org.apache.thrift.*;
 
 import org.antlr.runtime.tree.*;
+import org.apache.cassandra.glue.ThriftGlue;
 import org.apache.cassandra.service.*;
 
 import java.util.*;
@@ -162,12 +163,12 @@
        
        if (columnSpecCnt == 0)
        {
-           colParent = new ColumnParent(columnFamily, null);
+           colParent = ThriftGlue.createColumnParent(columnFamily, null);
        }
        else
        {
            assert (columnSpecCnt == 1);
-           colParent = new ColumnParent(columnFamily, CliCompiler.getColumn(columnFamilySpec, 0).getBytes("UTF-8"));
+           colParent = ThriftGlue.createColumnParent(columnFamily, CliCompiler.getColumn(columnFamilySpec, 0).getBytes("UTF-8"));
        }
        
        int count = thriftClient_.get_count(tableName, key, colParent, ConsistencyLevel.ONE);
@@ -231,7 +232,7 @@
             columnName = CliCompiler.getColumn(columnFamilySpec, 1).getBytes("UTF-8");
         }
         
-        thriftClient_.remove(tableName, key, new ColumnPath(columnFamily, superColumnName, columnName),
+        thriftClient_.remove(tableName, key, ThriftGlue.createColumnPath(columnFamily, superColumnName, columnName),
                              System.currentTimeMillis(), ConsistencyLevel.ONE);
         css_.out.println(String.format("%s removed.", (columnSpecCnt == 0) ? "row" : "column"));
     }  
@@ -240,8 +241,9 @@
             throws InvalidRequestException, UnavailableException, TimedOutException, TException, UnsupportedEncodingException, IllegalAccessException, NotFoundException, InstantiationException, ClassNotFoundException
     {
         SliceRange range = new SliceRange(ArrayUtils.EMPTY_BYTE_ARRAY, ArrayUtils.EMPTY_BYTE_ARRAY, true, 1000000);
-        List<ColumnOrSuperColumn> columns = thriftClient_.get_slice(keyspace, key, new ColumnParent(columnFamily, superColumnName),
-                                                                    new SlicePredicate(null, range), ConsistencyLevel.ONE);
+        List<ColumnOrSuperColumn> columns = thriftClient_.get_slice(keyspace, key, 
+            ThriftGlue.createColumnParent(columnFamily, superColumnName),
+            ThriftGlue.createSlicePredicate(null, range), ConsistencyLevel.ONE);
         int size = columns.size();
         
         // Print out super columns or columns.
@@ -358,7 +360,7 @@
         }
         
         // Perform a get(), print out the results.
-        ColumnPath path = new ColumnPath(columnFamily, superColumnName, columnName);
+        ColumnPath path = ThriftGlue.createColumnPath(columnFamily, superColumnName, columnName);
         Column column = thriftClient_.get(tableName, key, path, ConsistencyLevel.ONE).column;
         css_.out.printf("=> (column=%s, value=%s, timestamp=%d)\n", formatColumnName(tableName, columnFamily, column),
                         new String(column.value, "UTF-8"), column.timestamp);
@@ -401,7 +403,7 @@
         }
         
         // do the insert
-        thriftClient_.insert(tableName, key, new ColumnPath(columnFamily, superColumnName, columnName),
+        thriftClient_.insert(tableName, key, ThriftGlue.createColumnPath(columnFamily, superColumnName, columnName),
                              value.getBytes(), System.currentTimeMillis(), ConsistencyLevel.ONE);
         
         css_.out.println("Value inserted.");

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RangeSliceCommand.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RangeSliceCommand.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RangeSliceCommand.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RangeSliceCommand.java Tue Jan  5 20:34:04 2010
@@ -37,6 +37,7 @@
 package org.apache.cassandra.db;
 
 import org.apache.cassandra.concurrent.StageManager;
+import org.apache.cassandra.glue.ThriftGlue;
 import org.apache.cassandra.io.util.DataOutputBuffer;
 import org.apache.cassandra.io.ICompactSerializer;
 import org.apache.cassandra.net.Message;
@@ -164,7 +165,7 @@
         DecoratedKey finishKey = DecoratedKey.serializer().deserialize(dis);
         int max_keys = dis.readInt();
         return new RangeSliceCommand(keyspace,
-                                     new ColumnParent(column_family, super_column),
+                                     ThriftGlue.createColumnParent(column_family, super_column),
                                      pred,
                                      startKey,
                                      finishKey,

Added: incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/ThriftGlue.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/ThriftGlue.java?rev=896208&view=auto
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/ThriftGlue.java (added)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/glue/ThriftGlue.java Tue Jan  5 20:34:04 2010
@@ -0,0 +1,50 @@
+package org.apache.cassandra.glue;
+
+import java.util.List;
+
+import org.apache.cassandra.service.*;
+
+public class ThriftGlue
+{
+    private static ColumnOrSuperColumn createColumnOrSuperColumn(Column col, SuperColumn scol)
+    {
+        ColumnOrSuperColumn ret = new ColumnOrSuperColumn();
+        ret.setColumn(col);
+        ret.setSuper_column(scol);
+        return ret;
+    }
+
+    public static ColumnOrSuperColumn createColumnOrSuperColumn_Column(Column col)
+    {
+        return createColumnOrSuperColumn(col, null);
+    }
+
+    public static ColumnOrSuperColumn createColumnOrSuperColumn_SuperColumn(SuperColumn scol)
+    {
+        return createColumnOrSuperColumn(null, scol);
+    }
+
+    public static ColumnParent createColumnParent(String columnFamily, byte[] super_column)
+    {
+        ColumnParent ret = new ColumnParent(columnFamily);
+        ret.setSuper_column(super_column);
+        return ret;
+    }
+
+    public static ColumnPath createColumnPath(String columnFamily, byte[] superColumnName, byte[] columnName)
+    {
+        ColumnPath ret = new ColumnPath(columnFamily);
+        ret.setSuper_column(superColumnName);
+        ret.setColumn(columnName);
+        return ret;
+    }
+
+    public static SlicePredicate createSlicePredicate(List<byte[]> columns, SliceRange range)
+    {
+        SlicePredicate ret = new SlicePredicate();
+        ret.setColumn_names(columns);
+        ret.setSlice_range(range);
+        return null;
+    }
+
+}

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java Tue Jan  5 20:34:04 2010
@@ -29,6 +29,7 @@
 import org.apache.cassandra.dht.Range;
 import org.apache.cassandra.dht.Token;
 import org.apache.cassandra.gms.FailureDetector;
+import org.apache.cassandra.service.ConsistencyLevel;
 import org.apache.cassandra.service.IResponseResolver;
 import org.apache.cassandra.service.QuorumResponseHandler;
 import org.apache.cassandra.service.WriteResponseHandler;
@@ -56,7 +57,7 @@
 
     public abstract ArrayList<InetAddress> getNaturalEndpoints(Token token, TokenMetadata metadata);
     
-    public WriteResponseHandler getWriteResponseHandler(int blockFor, int consistency_level)
+    public WriteResponseHandler getWriteResponseHandler(int blockFor, ConsistencyLevel consistency_level)
     {
         return new WriteResponseHandler(blockFor);
     }

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java Tue Jan  5 20:34:04 2010
@@ -183,6 +183,7 @@
                 {
                     doneDataCenterItr = true;
                 }
+                
                 // Now try to find one on a different rack
                 if (!bOtherRack)
                 {
@@ -227,7 +228,7 @@
      * return a DCQRH with a map of all the DC rep facor.
      */
     @Override
-    public WriteResponseHandler getWriteResponseHandler(int blockFor, int consistency_level)
+    public WriteResponseHandler getWriteResponseHandler(int blockFor, ConsistencyLevel consistency_level)
     {
         if (consistency_level == ConsistencyLevel.DCQUORUM)
         {

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java Tue Jan  5 20:34:04 2010
@@ -33,6 +33,7 @@
 import org.apache.cassandra.db.*;
 import org.apache.cassandra.db.marshal.MarshalException;
 import org.apache.cassandra.db.filter.QueryPath;
+import org.apache.cassandra.glue.ThriftGlue;
 import org.apache.cassandra.service.StorageService;
 import org.apache.cassandra.utils.Pair;
 import org.apache.thrift.TException;
@@ -57,7 +58,7 @@
         storageService = StorageService.instance();
     }
 
-    protected Map<String, ColumnFamily> readColumnFamily(List<ReadCommand> commands, int consistency_level)
+    protected Map<String, ColumnFamily> readColumnFamily(List<ReadCommand> commands, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         // TODO - Support multiple column families per row, right now row only contains 1 column family
@@ -124,7 +125,7 @@
                 continue;
             }
             Column thrift_column = new Column(column.name(), column.value(), column.timestamp());
-            thriftColumns.add(new ColumnOrSuperColumn(thrift_column, null));
+            thriftColumns.add(ThriftGlue.createColumnOrSuperColumn_Column(thrift_column));
         }
 
         // we have to do the reversing here, since internally we pass results around in ColumnFamily
@@ -146,7 +147,7 @@
                 continue;
             }
             SuperColumn superColumn = new SuperColumn(column.name(), subcolumns);
-            thriftSuperColumns.add(new ColumnOrSuperColumn(null, superColumn));
+            thriftSuperColumns.add(ThriftGlue.createColumnOrSuperColumn_SuperColumn(superColumn));
         }
 
         if (reverseOrder)
@@ -155,7 +156,7 @@
         return thriftSuperColumns;
     }
 
-    private Map<String, List<ColumnOrSuperColumn>> getSlice(List<ReadCommand> commands, int consistency_level)
+    private Map<String, List<ColumnOrSuperColumn>> getSlice(List<ReadCommand> commands, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         Map<String, ColumnFamily> columnFamilies = readColumnFamily(commands, consistency_level);
@@ -185,12 +186,12 @@
                 return thriftifyColumns(subcolumns, reverseOrder);
         }
         if (cf.isSuper())
-            return thriftifySuperColumns(cf.getSortedColumns(), reverseOrder);
+            return thriftifySuperColumns(cf.getSortedColumns(), reverseOrder);        
         else
             return thriftifyColumns(cf.getSortedColumns(), reverseOrder);
     }
 
-    public List<ColumnOrSuperColumn> get_slice(String keyspace, String key, ColumnParent column_parent, SlicePredicate predicate, int consistency_level)
+    public List<ColumnOrSuperColumn> get_slice(String keyspace, String key, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -198,7 +199,7 @@
         return multigetSliceInternal(keyspace, Arrays.asList(key), column_parent, predicate, consistency_level).get(key);
     }
     
-    public Map<String, List<ColumnOrSuperColumn>> multiget_slice(String keyspace, List<String> keys, ColumnParent column_parent, SlicePredicate predicate, int consistency_level)
+    public Map<String, List<ColumnOrSuperColumn>> multiget_slice(String keyspace, List<String> keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -206,7 +207,7 @@
         return multigetSliceInternal(keyspace, keys, column_parent, predicate, consistency_level);
     }
 
-    private Map<String, List<ColumnOrSuperColumn>> multigetSliceInternal(String keyspace, List<String> keys, ColumnParent column_parent, SlicePredicate predicate, int consistency_level)
+    private Map<String, List<ColumnOrSuperColumn>> multigetSliceInternal(String keyspace, List<String> keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         ThriftValidation.validateColumnParent(keyspace, column_parent);
@@ -234,7 +235,7 @@
         return getSlice(commands, consistency_level);
     }
 
-    public ColumnOrSuperColumn get(String table, String key, ColumnPath column_path, int consistency_level)
+    public ColumnOrSuperColumn get(String table, String key, ColumnPath column_path, ConsistencyLevel consistency_level)
     throws InvalidRequestException, NotFoundException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -248,7 +249,7 @@
     }
 
     /** no values will be mapped to keys with no data */
-    private Map<String, Collection<IColumn>> multigetColumns(List<ReadCommand> commands, int consistency_level)
+    private Map<String, Collection<IColumn>> multigetColumns(List<ReadCommand> commands, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         Map<String, ColumnFamily> cfamilies = readColumnFamily(commands, consistency_level);
@@ -283,7 +284,7 @@
     }
 
     /** always returns a ColumnOrSuperColumn for each key, even if there is no data for it */
-    public Map<String, ColumnOrSuperColumn> multiget(String table, List<String> keys, ColumnPath column_path, int consistency_level)
+    public Map<String, ColumnOrSuperColumn> multiget(String table, List<String> keys, ColumnPath column_path, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -291,7 +292,7 @@
         return multigetInternal(table, keys, column_path, consistency_level);
     }
 
-    private Map<String, ColumnOrSuperColumn> multigetInternal(String table, List<String> keys, ColumnPath column_path, int consistency_level)
+    private Map<String, ColumnOrSuperColumn> multigetInternal(String table, List<String> keys, ColumnPath column_path, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         ThriftValidation.validateColumnPath(table, column_path);
@@ -330,8 +331,8 @@
                 else
                 {
                     columnorsupercolumn = column instanceof org.apache.cassandra.db.Column
-                                          ? new ColumnOrSuperColumn(new Column(column.name(), column.value(), column.timestamp()), null)
-                                          : new ColumnOrSuperColumn(null, new SuperColumn(column.name(), thriftifySubColumns(column.getSubColumns())));
+                                          ? ThriftGlue.createColumnOrSuperColumn_Column(new Column(column.name(), column.value(), column.timestamp()))
+                                          : ThriftGlue.createColumnOrSuperColumn_SuperColumn(new SuperColumn(column.name(), thriftifySubColumns(column.getSubColumns())));
                 }
 
             }
@@ -341,7 +342,7 @@
         return columnFamiliesMap;
     }
 
-    public int get_count(String table, String key, ColumnParent column_parent, int consistency_level)
+    public int get_count(String table, String key, ColumnParent column_parent, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -349,7 +350,7 @@
         return multigetCountInternal(table, Arrays.asList(key), column_parent, consistency_level).get(key);
     }
 
-    private Map<String, Integer> multigetCountInternal(String table, List<String> keys, ColumnParent column_parent, int consistency_level)
+    private Map<String, Integer> multigetCountInternal(String table, List<String> keys, ColumnParent column_parent, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         // validateColumnParent assumes we require simple columns; g_c_c is the only
@@ -386,7 +387,7 @@
         return columnFamiliesMap;
     }
 
-    public void insert(String table, String key, ColumnPath column_path, byte[] value, long timestamp, int consistency_level)
+    public void insert(String table, String key, ColumnPath column_path, byte[] value, long timestamp, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -406,7 +407,7 @@
         doInsert(consistency_level, rm);
     }
     
-    public void batch_insert(String keyspace, String key, Map<String, List<ColumnOrSuperColumn>> cfmap, int consistency_level)
+    public void batch_insert(String keyspace, String key, Map<String, List<ColumnOrSuperColumn>> cfmap, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -424,7 +425,7 @@
         doInsert(consistency_level, RowMutation.getRowMutation(keyspace, key, cfmap));
     }
 
-    public void batch_mutate(String keyspace, Map<String,Map<String,List<Mutation>>> mutation_map, int consistency_level)
+    public void batch_mutate(String keyspace, Map<String,Map<String,List<Mutation>>> mutation_map, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -465,7 +466,7 @@
         }
     }
 
-    public void remove(String table, String key, ColumnPath column_path, long timestamp, int consistency_level)
+    public void remove(String table, String key, ColumnPath column_path, long timestamp, ConsistencyLevel consistency_level)
     throws InvalidRequestException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -479,7 +480,7 @@
         doInsert(consistency_level, rm);
     }
 
-    private void doInsert(int consistency_level, RowMutation rm) throws UnavailableException, TimedOutException
+    private void doInsert(ConsistencyLevel consistency_level, RowMutation rm) throws UnavailableException, TimedOutException
     {
         if (consistency_level != ConsistencyLevel.ZERO)
         {
@@ -577,7 +578,7 @@
         return columnFamiliesMap;
     }
 
-    public List<KeySlice> get_range_slice(String keyspace, ColumnParent column_parent, SlicePredicate predicate, String start_key, String finish_key, int maxRows, int consistency_level)
+    public List<KeySlice> get_range_slice(String keyspace, ColumnParent column_parent, SlicePredicate predicate, String start_key, String finish_key, int maxRows, ConsistencyLevel consistency_level)
             throws InvalidRequestException, UnavailableException, TException, TimedOutException
     {
         if (logger.isDebugEnabled())
@@ -621,7 +622,7 @@
         return keySlices;
     }
 
-    public List<String> get_key_range(String tablename, String columnFamily, String startWith, String stopAt, int maxResults, int consistency_level)
+    public List<String> get_key_range(String tablename, String columnFamily, String startWith, String stopAt, int maxResults, ConsistencyLevel consistency_level)
             throws InvalidRequestException, TException, UnavailableException, TimedOutException
     {
         if (logger.isDebugEnabled())

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java Tue Jan  5 20:34:04 2010
@@ -163,7 +163,7 @@
         }
     }
     
-    public static void mutateBlocking(List<RowMutation> mutations, int consistency_level) throws UnavailableException, TimeoutException
+    public static void mutateBlocking(List<RowMutation> mutations, ConsistencyLevel consistency_level) throws UnavailableException, TimeoutException
     {
         long startTime = System.currentTimeMillis();
         ArrayList<WriteResponseHandler> responseHandlers = new ArrayList<WriteResponseHandler>();
@@ -273,7 +273,7 @@
         StageManager.getStage(StageManager.mutationStage_).execute(runnable);
     }
 
-    private static int determineBlockFor(int naturalTargets, int hintedTargets, int consistency_level)
+    private static int determineBlockFor(int naturalTargets, int hintedTargets, ConsistencyLevel consistency_level)
     {
         assert naturalTargets >= 1;
         assert hintedTargets >= naturalTargets;
@@ -346,7 +346,7 @@
      * Performs the actual reading of a row out of the StorageService, fetching
      * a specific set of column names from a given column family.
      */
-    public static List<Row> readProtocol(List<ReadCommand> commands, int consistency_level)
+    public static List<Row> readProtocol(List<ReadCommand> commands, ConsistencyLevel consistency_level)
             throws IOException, UnavailableException, TimeoutException
     {
         long startTime = System.currentTimeMillis();
@@ -380,7 +380,7 @@
         }
         else
         {
-            assert consistency_level >= ConsistencyLevel.QUORUM;
+            assert consistency_level.getValue() >= ConsistencyLevel.QUORUM.getValue();
             rows = strongRead(commands, consistency_level);
         }
 
@@ -401,7 +401,7 @@
          * 7. else carry out read repair by getting data from all the nodes.
         // 5. return success
      */
-    private static List<Row> strongRead(List<ReadCommand> commands, int consistency_level) throws IOException, UnavailableException, TimeoutException
+    private static List<Row> strongRead(List<ReadCommand> commands, ConsistencyLevel consistency_level) throws IOException, UnavailableException, TimeoutException
     {
         List<QuorumResponseHandler<Row>> quorumResponseHandlers = new ArrayList<QuorumResponseHandler<Row>>();
         List<InetAddress[]> commandEndPoints = new ArrayList<InetAddress[]>();
@@ -515,7 +515,7 @@
         return rows;
     }
 
-    static List<Pair<String, ColumnFamily>> getRangeSlice(RangeSliceCommand command, int consistency_level) throws IOException, UnavailableException, TimeoutException
+    static List<Pair<String, ColumnFamily>> getRangeSlice(RangeSliceCommand command, ConsistencyLevel consistency_level) throws IOException, UnavailableException, TimeoutException
     {
         long startTime = System.currentTimeMillis();
         TokenMetadata tokenMetadata = StorageService.instance().getTokenMetadata();

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java Tue Jan  5 20:34:04 2010
@@ -1410,7 +1410,7 @@
         Gossiper.instance().addApplicationState(MOVE_STATE, new ApplicationState(STATE_LEFT + Delimiter + REMOVE_TOKEN + Delimiter + token.toString()));
     }
 
-    public WriteResponseHandler getWriteResponseHandler(int blockFor, int consistency_level)
+    public WriteResponseHandler getWriteResponseHandler(int blockFor, ConsistencyLevel consistency_level)
     {
         return replicationStrategy_.getWriteResponseHandler(blockFor, consistency_level);
     }

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ThriftValidation.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ThriftValidation.java?rev=896208&r1=896207&r2=896208&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ThriftValidation.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ThriftValidation.java Tue Jan  5 20:34:04 2010
@@ -20,8 +20,6 @@
  * 
  */
 
-
-import java.util.List;
 import java.util.Comparator;
 import java.util.Arrays;
 
@@ -31,6 +29,7 @@
 import org.apache.cassandra.db.IColumn;
 import org.apache.cassandra.db.marshal.AbstractType;
 import org.apache.cassandra.db.marshal.MarshalException;
+import org.apache.cassandra.glue.ThriftGlue;
 import org.apache.cassandra.config.DatabaseDescriptor;
 
 public class ThriftValidation
@@ -211,14 +210,14 @@
     {
         if (cosc.column != null)
         {
-            ThriftValidation.validateColumnPath(keyspace, new ColumnPath(cfName, null, cosc.column.name));
+            ThriftValidation.validateColumnPath(keyspace, ThriftGlue.createColumnPath(cfName, null, cosc.column.name));
         }
 
         if (cosc.super_column != null)
         {
             for (Column c : cosc.super_column.columns)
             {
-                ThriftValidation.validateColumnPath(keyspace, new ColumnPath(cfName, cosc.super_column.name, c.name));
+                ThriftValidation.validateColumnPath(keyspace, ThriftGlue.createColumnPath(cfName, cosc.super_column.name, c.name));
             }
         }
 
@@ -273,7 +272,7 @@
         }
 
         if (predicate.slice_range != null) {
-            validateRange(keyspace, new ColumnParent(cfName, scName), predicate.slice_range);
+            validateRange(keyspace, ThriftGlue.createColumnParent(cfName, scName), predicate.slice_range);
         }
 
         if (predicate.column_names != null) {