Advertisement
Guest User

Untitled

a guest
Aug 16th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Haxe 3.38 KB | None | 0 0
  1. @:buildXml('<include name=\"${haxelib:hxCassandra}/Build.xml\" />')
  2. class Main {
  3.     public static function main() {
  4.        
  5.         var cluster = Cassandra.cluster_new();
  6.         var session = Cassandra.session_new();
  7.        
  8.         Cassandra.cluster_set_contact_points(cluster, "127.0.0.1");
  9.        
  10.         var connect_future = Cassandra.session_connect(session, cluster);
  11.         var error = Cassandra.future_error_code(connect_future);
  12.         if (error != CassError.CASS_OK) {
  13.             var message:ConstCharStar = "";
  14.             var message_length:SizeT = 0;
  15.             Cassandra.future_error_message(connect_future, RawPointer.addressOf(message), RawPointer.addressOf(message_length));
  16.             trace(message);
  17.             return;
  18.         }
  19.        
  20.         Cassandra.future_free(connect_future);
  21.         trace("connected");
  22.        
  23.         //var statement = Cassandra.statement_new("SELECT * FROM mhsnosearch.aliases", 0);
  24.         var statement = Cassandra.statement_new("SELECT * FROM mhsnosearch.services", 0);
  25.         //var statement = Cassandra.statement_new("SELECT * FROM mhsnosearch.service_routes", 0);
  26.         var statement_future = Cassandra.session_execute(session, statement);
  27.         var error = Cassandra.future_error_code(statement_future);
  28.         if (error != CassError.CASS_OK) {
  29.             var message:ConstCharStar = "";
  30.             var message_length:SizeT = 0;
  31.             Cassandra.future_error_message(statement_future, RawPointer.addressOf(message), RawPointer.addressOf(message_length));
  32.             trace(message);
  33.             return;
  34.         }
  35.        
  36.         var result = Cassandra.future_get_result(statement_future);
  37.         if (result == null) {
  38.             var message:ConstCharStar = "";
  39.             var message_length:SizeT = 0;
  40.             Cassandra.future_error_message(statement_future, RawPointer.addressOf(message), RawPointer.addressOf(message_length));
  41.             trace(message);
  42.             return;
  43.         }
  44.        
  45.         Cassandra.future_free(statement_future);
  46.         var n = 0;
  47.         var it = Cassandra.iterator_from_result(result);
  48.         while (Cassandra.iterator_next(it)) {
  49.             var row = Cassandra.iterator_get_row(it);
  50.            
  51.             Sys.print("" + n + ". ");
  52.            
  53.             for (i in 0...Cassandra.result_column_count(result)) {
  54.                 var column_name:ConstCharStar = "";
  55.                 var column_name_length:SizeT = 0;
  56.                 Cassandra.result_column_name(result, i, RawPointer.addressOf(column_name), RawPointer.addressOf(column_name_length));
  57.                
  58.                 var value:ConstCharStar = "";
  59.                 var value_length:SizeT = 0;
  60.                 Cassandra.value_get_string(Cassandra.row_get_column_by_name(row, column_name), RawPointer.addressOf(value), RawPointer.addressOf(value_length));
  61.                
  62.                 var v:String = value.toString().substr(0, value_length);
  63.                
  64.                 Sys.print("" + column_name.toString().substr(0, column_name_length) + ": " + v + ", ");
  65.             }
  66.             Sys.print("\n");
  67.             n++;
  68.         }
  69.         trace("columns: " + Cassandra.result_column_count(result));
  70.         trace("rows: " + Cassandra.result_row_count(result));
  71.        
  72.         Cassandra.result_free(result);
  73.         Cassandra.session_free(session);
  74.         Cassandra.cluster_free(cluster);
  75.     }
  76.    
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement