public RowMutation mutationForKey( ByteBuffer key, String keyspace, Long timestamp, ThriftClientState clientState, List<ByteBuffer> variables, CFMetaData metadata) throws InvalidRequestException { RowMutation rm = new RowMutation(keyspace, key); QueryProcessor.validateKeyAlias(metadata, keyName); AbstractType<?> comparator = metadata.getComparatorFor(null); if (columns.size() < 1) { // No columns, delete the row rm.delete( new QueryPath(columnFamily), (timestamp == null) ? getTimestamp(clientState) : timestamp); } else { // Delete specific columns for (Term column : columns) { ByteBuffer columnName = column.getByteBuffer(comparator, variables); validateColumnName(columnName); rm.delete( new QueryPath(columnFamily, null, columnName), (timestamp == null) ? getTimestamp(clientState) : timestamp); } } return rm; }