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 2009/10/01 18:00:49 UTC

svn commit: r820697 - in /incubator/cassandra/trunk/src/java/org/apache/cassandra/cli: CliMain.java CliOptions.java CliSessionState.java

Author: eevans
Date: Thu Oct  1 16:00:48 2009
New Revision: 820697

URL: http://svn.apache.org/viewvc?rev=820697&view=rev
Log:
framed transport option for cassandra cli

Patch by Dan Di Spaltro; reviewed by eevans for CASSANDRA-464

Modified:
    incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliSessionState.java

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java?rev=820697&r1=820696&r2=820697&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java Thu Oct  1 16:00:48 2009
@@ -21,6 +21,7 @@
 import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.transport.TSocket;
 import org.apache.thrift.transport.TTransport;
+import org.apache.thrift.transport.TFramedTransport;
 
 import jline.*;
 import java.io.*;
@@ -48,7 +49,11 @@
         if (transport_ != null)
             transport_.close();
 
-        transport_ = socket;
+        if (css_.framed) {
+            transport_ = new TFramedTransport(socket);
+        } else {
+            transport_ = socket;
+        }
 
         TBinaryProtocol binaryProtocol = new TBinaryProtocol(transport_, false, false);
         Cassandra.Client cassandraClient = new Cassandra.Client(binaryProtocol);

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java?rev=820697&r1=820696&r2=820697&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java Thu Oct  1 16:00:48 2009
@@ -27,6 +27,7 @@
     // Command line options
     private static final String HOST_OPTION = "host";
     private static final String PORT_OPTION = "port";
+    private static final String FRAME_OPTION = "framed";
 
     // Default values for optional command line arguments
     private static final int    DEFAULT_THRIFT_PORT = 9160;
@@ -38,12 +39,13 @@
         options = new Options();
         options.addOption(HOST_OPTION, true, "cassandra server's host name");
         options.addOption(PORT_OPTION, true, "cassandra server's thrift port");  
+        options.addOption(FRAME_OPTION, false, "cassandra server's framed transport");  
     }
 
     private static void printUsage()
     {
         System.err.println("");
-        System.err.println("Usage: cassandra-cli --host hostname [--port <portname>]");
+        System.err.println("Usage: cassandra-cli --host hostname [--port <portname>] [--framed]");
         System.err.println("");
     }
 
@@ -78,6 +80,11 @@
             css.hostName = cmd.getOptionValue(HOST_OPTION);
         }
 
+        // Look to see if frame has been specified
+        if (cmd.hasOption(FRAME_OPTION)) {
+            css.framed = true;
+        }
+
         // Look for optional args.
         if (cmd.hasOption(PORT_OPTION))
         {

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliSessionState.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliSessionState.java?rev=820697&r1=820696&r2=820697&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliSessionState.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/cli/CliSessionState.java Thu Oct  1 16:00:48 2009
@@ -26,6 +26,7 @@
     public boolean timingOn = false;
     public String  hostName;       // cassandra server name
     public int     thriftPort;     // cassandra server's thrift port
+    public boolean framed = false; // cassandra server's framed transport 
 
     /*
      * Streams to read/write from