| #!/usr/bin/env python |
| # |
| # Autogenerated by Thrift Compiler (0.8.0) |
| # |
| # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING |
| # |
| # options string: py |
| # |
| |
| import sys |
| import pprint |
| from urlparse import urlparse |
| from thrift.transport import TTransport |
| from thrift.transport import TSocket |
| from thrift.transport import THttpClient |
| from thrift.protocol import TBinaryProtocol |
| |
| import Cassandra |
| from ttypes import * |
| |
| if len(sys.argv) <= 1 or sys.argv[1] == '--help': |
| print '' |
| print 'Usage: ' + sys.argv[0] + ' [-h host[:port]] [-u url] [-f[ramed]] function [arg1 [arg2...]]' |
| print '' |
| print 'Functions:' |
| print ' void login(AuthenticationRequest auth_request)' |
| print ' void set_keyspace(string keyspace)' |
| print ' ColumnOrSuperColumn get(string key, ColumnPath column_path, ConsistencyLevel consistency_level)' |
| print ' get_slice(string key, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)' |
| print ' i32 get_count(string key, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)' |
| print ' multiget_slice( keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)' |
| print ' multiget_count( keys, ColumnParent column_parent, SlicePredicate predicate, ConsistencyLevel consistency_level)' |
| print ' get_range_slices(ColumnParent column_parent, SlicePredicate predicate, KeyRange range, ConsistencyLevel consistency_level)' |
| print ' get_paged_slice(string column_family, KeyRange range, string start_column, ConsistencyLevel consistency_level)' |
| print ' get_indexed_slices(ColumnParent column_parent, IndexClause index_clause, SlicePredicate column_predicate, ConsistencyLevel consistency_level)' |
| print ' void insert(string key, ColumnParent column_parent, Column column, ConsistencyLevel consistency_level)' |
| print ' void add(string key, ColumnParent column_parent, CounterColumn column, ConsistencyLevel consistency_level)' |
| print ' void remove(string key, ColumnPath column_path, i64 timestamp, ConsistencyLevel consistency_level)' |
| print ' void remove_counter(string key, ColumnPath path, ConsistencyLevel consistency_level)' |
| print ' void batch_mutate( mutation_map, ConsistencyLevel consistency_level)' |
| print ' void truncate(string cfname)' |
| print ' describe_schema_versions()' |
| print ' describe_keyspaces()' |
| print ' string describe_cluster_name()' |
| print ' string describe_version()' |
| print ' describe_ring(string keyspace)' |
| print ' string describe_partitioner()' |
| print ' string describe_snitch()' |
| print ' KsDef describe_keyspace(string keyspace)' |
| print ' describe_splits(string cfName, string start_token, string end_token, i32 keys_per_split)' |
| print ' string system_add_column_family(CfDef cf_def)' |
| print ' string system_drop_column_family(string column_family)' |
| print ' string system_add_keyspace(KsDef ks_def)' |
| print ' string system_drop_keyspace(string keyspace)' |
| print ' string system_update_keyspace(KsDef ks_def)' |
| print ' string system_update_column_family(CfDef cf_def)' |
| print ' CqlResult execute_cql_query(string query, Compression compression)' |
| print ' CqlPreparedResult prepare_cql_query(string query, Compression compression)' |
| print ' CqlResult execute_prepared_cql_query(i32 itemId, values)' |
| print ' void set_cql_version(string version)' |
| print '' |
| sys.exit(0) |
| |
| pp = pprint.PrettyPrinter(indent = 2) |
| host = 'localhost' |
| port = 9090 |
| uri = '' |
| framed = False |
| http = False |
| argi = 1 |
| |
| if sys.argv[argi] == '-h': |
| parts = sys.argv[argi+1].split(':') |
| host = parts[0] |
| if len(parts) > 1: |
| port = int(parts[1]) |
| argi += 2 |
| |
| if sys.argv[argi] == '-u': |
| url = urlparse(sys.argv[argi+1]) |
| parts = url[1].split(':') |
| host = parts[0] |
| if len(parts) > 1: |
| port = int(parts[1]) |
| else: |
| port = 80 |
| uri = url[2] |
| if url[4]: |
| uri += '?%s' % url[4] |
| http = True |
| argi += 2 |
| |
| if sys.argv[argi] == '-f' or sys.argv[argi] == '-framed': |
| framed = True |
| argi += 1 |
| |
| cmd = sys.argv[argi] |
| args = sys.argv[argi+1:] |
| |
| if http: |
| transport = THttpClient.THttpClient(host, port, uri) |
| else: |
| socket = TSocket.TSocket(host, port) |
| if framed: |
| transport = TTransport.TFramedTransport(socket) |
| else: |
| transport = TTransport.TBufferedTransport(socket) |
| protocol = TBinaryProtocol.TBinaryProtocol(transport) |
| client = Cassandra.Client(protocol) |
| transport.open() |
| |
| if cmd == 'login': |
| if len(args) != 1: |
| print 'login requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.login(eval(args[0]),)) |
| |
| elif cmd == 'set_keyspace': |
| if len(args) != 1: |
| print 'set_keyspace requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.set_keyspace(args[0],)) |
| |
| elif cmd == 'get': |
| if len(args) != 3: |
| print 'get requires 3 args' |
| sys.exit(1) |
| pp.pprint(client.get(args[0],eval(args[1]),eval(args[2]),)) |
| |
| elif cmd == 'get_slice': |
| if len(args) != 4: |
| print 'get_slice requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.get_slice(args[0],eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'get_count': |
| if len(args) != 4: |
| print 'get_count requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.get_count(args[0],eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'multiget_slice': |
| if len(args) != 4: |
| print 'multiget_slice requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.multiget_slice(eval(args[0]),eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'multiget_count': |
| if len(args) != 4: |
| print 'multiget_count requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.multiget_count(eval(args[0]),eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'get_range_slices': |
| if len(args) != 4: |
| print 'get_range_slices requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.get_range_slices(eval(args[0]),eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'get_paged_slice': |
| if len(args) != 4: |
| print 'get_paged_slice requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.get_paged_slice(args[0],eval(args[1]),args[2],eval(args[3]),)) |
| |
| elif cmd == 'get_indexed_slices': |
| if len(args) != 4: |
| print 'get_indexed_slices requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.get_indexed_slices(eval(args[0]),eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'insert': |
| if len(args) != 4: |
| print 'insert requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.insert(args[0],eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'add': |
| if len(args) != 4: |
| print 'add requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.add(args[0],eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'remove': |
| if len(args) != 4: |
| print 'remove requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.remove(args[0],eval(args[1]),eval(args[2]),eval(args[3]),)) |
| |
| elif cmd == 'remove_counter': |
| if len(args) != 3: |
| print 'remove_counter requires 3 args' |
| sys.exit(1) |
| pp.pprint(client.remove_counter(args[0],eval(args[1]),eval(args[2]),)) |
| |
| elif cmd == 'batch_mutate': |
| if len(args) != 2: |
| print 'batch_mutate requires 2 args' |
| sys.exit(1) |
| pp.pprint(client.batch_mutate(eval(args[0]),eval(args[1]),)) |
| |
| elif cmd == 'truncate': |
| if len(args) != 1: |
| print 'truncate requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.truncate(args[0],)) |
| |
| elif cmd == 'describe_schema_versions': |
| if len(args) != 0: |
| print 'describe_schema_versions requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_schema_versions()) |
| |
| elif cmd == 'describe_keyspaces': |
| if len(args) != 0: |
| print 'describe_keyspaces requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_keyspaces()) |
| |
| elif cmd == 'describe_cluster_name': |
| if len(args) != 0: |
| print 'describe_cluster_name requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_cluster_name()) |
| |
| elif cmd == 'describe_version': |
| if len(args) != 0: |
| print 'describe_version requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_version()) |
| |
| elif cmd == 'describe_ring': |
| if len(args) != 1: |
| print 'describe_ring requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.describe_ring(args[0],)) |
| |
| elif cmd == 'describe_partitioner': |
| if len(args) != 0: |
| print 'describe_partitioner requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_partitioner()) |
| |
| elif cmd == 'describe_snitch': |
| if len(args) != 0: |
| print 'describe_snitch requires 0 args' |
| sys.exit(1) |
| pp.pprint(client.describe_snitch()) |
| |
| elif cmd == 'describe_keyspace': |
| if len(args) != 1: |
| print 'describe_keyspace requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.describe_keyspace(args[0],)) |
| |
| elif cmd == 'describe_splits': |
| if len(args) != 4: |
| print 'describe_splits requires 4 args' |
| sys.exit(1) |
| pp.pprint(client.describe_splits(args[0],args[1],args[2],eval(args[3]),)) |
| |
| elif cmd == 'system_add_column_family': |
| if len(args) != 1: |
| print 'system_add_column_family requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_add_column_family(eval(args[0]),)) |
| |
| elif cmd == 'system_drop_column_family': |
| if len(args) != 1: |
| print 'system_drop_column_family requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_drop_column_family(args[0],)) |
| |
| elif cmd == 'system_add_keyspace': |
| if len(args) != 1: |
| print 'system_add_keyspace requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_add_keyspace(eval(args[0]),)) |
| |
| elif cmd == 'system_drop_keyspace': |
| if len(args) != 1: |
| print 'system_drop_keyspace requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_drop_keyspace(args[0],)) |
| |
| elif cmd == 'system_update_keyspace': |
| if len(args) != 1: |
| print 'system_update_keyspace requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_update_keyspace(eval(args[0]),)) |
| |
| elif cmd == 'system_update_column_family': |
| if len(args) != 1: |
| print 'system_update_column_family requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.system_update_column_family(eval(args[0]),)) |
| |
| elif cmd == 'execute_cql_query': |
| if len(args) != 2: |
| print 'execute_cql_query requires 2 args' |
| sys.exit(1) |
| pp.pprint(client.execute_cql_query(args[0],eval(args[1]),)) |
| |
| elif cmd == 'prepare_cql_query': |
| if len(args) != 2: |
| print 'prepare_cql_query requires 2 args' |
| sys.exit(1) |
| pp.pprint(client.prepare_cql_query(args[0],eval(args[1]),)) |
| |
| elif cmd == 'execute_prepared_cql_query': |
| if len(args) != 2: |
| print 'execute_prepared_cql_query requires 2 args' |
| sys.exit(1) |
| pp.pprint(client.execute_prepared_cql_query(eval(args[0]),eval(args[1]),)) |
| |
| elif cmd == 'set_cql_version': |
| if len(args) != 1: |
| print 'set_cql_version requires 1 args' |
| sys.exit(1) |
| pp.pprint(client.set_cql_version(args[0],)) |
| |
| else: |
| print 'Unrecognized method %s' % cmd |
| sys.exit(1) |
| |
| transport.close() |