Author: kturner
Date: Fri Jan 25 19:51:44 2013
New Revision: 1438668

URL: http://svn.apache.org/viewvc?rev=1438668&view=rev
Log:
ACCUMULO-991 committing patch from Jim Klucar

Modified:
    accumulo/trunk/proxy/proxy.properties
    accumulo/trunk/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java
    accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/SimpleTest.java
    
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyInstanceOperations.java
    
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyReadWrite.java
    
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java
    
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java

Modified: accumulo/trunk/proxy/proxy.properties
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/proxy.properties?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- accumulo/trunk/proxy/proxy.properties (original)
+++ accumulo/trunk/proxy/proxy.properties Fri Jan 25 19:51:44 2013
@@ -2,6 +2,8 @@ accumulo.proxy.apis=org.apache.accumulo.
 
 org.apache.accumulo.proxy.ProxyServer.useMockInstance=false
 
org.apache.accumulo.proxy.thrift.AccumuloProxy.implementor=org.apache.accumulo.proxy.ProxyServer
+org.apache.accumulo.proxy.thrift.AccumuloProxy.protocolFactory=org.apache.thrift.protocol.TCompactProtocol$Factory
+org.apache.accumulo.proxy.thrift.AccumuloProxy.transportFactory=org.apache.thrift.transport.TFramedTransport$Factory
 org.apache.accumulo.proxy.thrift.AccumuloProxy.port=42424
 
 org.apache.accumulo.proxy.ProxyServer.instancename=test

Modified: 
accumulo/trunk/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- accumulo/trunk/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java 
(original)
+++ accumulo/trunk/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java Fri 
Jan 25 19:51:44 2013
@@ -24,11 +24,11 @@ import java.util.Properties;
 
 import org.apache.accumulo.core.cli.Help;
 import org.apache.thrift.TProcessor;
-import org.apache.thrift.protocol.TCompactProtocol;
+import org.apache.thrift.protocol.TProtocolFactory;
 import org.apache.thrift.server.THsHaServer;
 import org.apache.thrift.server.TServer;
-import org.apache.thrift.transport.TFramedTransport;
 import org.apache.thrift.transport.TNonblockingServerSocket;
+import org.apache.thrift.transport.TTransportFactory;
 
 import com.beust.jcommander.IStringConverter;
 import com.beust.jcommander.Parameter;
@@ -83,15 +83,20 @@ public class Proxy {
       
       Class<?> implementor = Class.forName(opts.prop.getProperty(api + 
".implementor"));
       
+      Class<? extends TProtocolFactory> protoFactoryClass = 
Class.forName(opts.prop.getProperty(api + 
".protocolFactory")).asSubclass(TProtocolFactory.class);
+      Class<? extends TTransportFactory> transportFactoryClass = 
Class.forName(opts.prop.getProperty(api + ".transportFactory")).asSubclass(
+          TTransportFactory.class);
+
       int port = Integer.parseInt(opts.prop.getProperty(api + ".port"));
-      TServer server = createProxyServer(apiclass, implementor, port, 
opts.prop);
+      TServer server = createProxyServer(apiclass, implementor, port, 
protoFactoryClass, transportFactoryClass, opts.prop);
       server.serve();
     }
   }
   
-  public static TServer createProxyServer(Class<?> api, Class<?> implementor, 
final int port, Properties properties) throws Exception {
+  public static TServer createProxyServer(Class<?> api, Class<?> implementor, 
final int port, Class<? extends TProtocolFactory> protoClass,
+      Class<? extends TTransportFactory> transportFactoryClass, Properties 
properties) throws Exception {
     final TNonblockingServerSocket socket = new TNonblockingServerSocket(port);
-    
+
     // create the implementor
     Object impl = 
implementor.getConstructor(Properties.class).newInstance(properties);
     
@@ -104,8 +109,8 @@ public class Proxy {
     
     THsHaServer.Args args = new THsHaServer.Args(socket);
     args.processor(processor);
-    args.transportFactory(new TFramedTransport.Factory());
-    args.protocolFactory(new TCompactProtocol.Factory());
+    args.transportFactory(transportFactoryClass.newInstance());
+    args.protocolFactory(protoClass.newInstance());
     return new THsHaServer(args);
   }
   

Modified: 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/SimpleTest.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/SimpleTest.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/SimpleTest.java 
(original)
+++ 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/SimpleTest.java 
Fri Jan 25 19:51:44 2013
@@ -60,7 +60,9 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.Text;
 import org.apache.thrift.TException;
+import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.server.TServer;
+import org.apache.thrift.transport.TFramedTransport;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -93,11 +95,8 @@ public class SimpleTest {
     props.put("org.apache.accumulo.proxy.ProxyServer.zookeepers", 
accumulo.getZookeepers());
     
     proxyPort = 40000 + random.nextInt(20000);
-    proxyServer = Proxy.createProxyServer(
-        org.apache.accumulo.proxy.thrift.AccumuloProxy.class,
-        org.apache.accumulo.proxy.ProxyServer.class, 
-        proxyPort, 
-        props);
+    proxyServer = 
Proxy.createProxyServer(org.apache.accumulo.proxy.thrift.AccumuloProxy.class, 
org.apache.accumulo.proxy.ProxyServer.class, proxyPort,
+        TCompactProtocol.Factory.class, TFramedTransport.Factory.class, props);
     thread = new Thread() {
       @Override
       public void run() {

Modified: 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyInstanceOperations.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyInstanceOperations.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyInstanceOperations.java
 (original)
+++ 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyInstanceOperations.java
 Fri Jan 25 19:51:44 2013
@@ -23,11 +23,11 @@ import static org.junit.Assert.assertTru
 import java.nio.ByteBuffer;
 import java.util.Properties;
 
-import org.apache.accumulo.proxy.Proxy;
-import org.apache.accumulo.proxy.TestProxyClient;
 import org.apache.accumulo.proxy.thrift.UserPass;
 import org.apache.thrift.TException;
+import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.server.TServer;
+import org.apache.thrift.transport.TFramedTransport;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -44,8 +44,8 @@ public class TestProxyInstanceOperations
     Properties prop = new Properties();
     prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", 
"true");
     
-    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
-        Class.forName("org.apache.accumulo.proxy.ProxyServer"), port, prop);
+    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
 Class.forName("org.apache.accumulo.proxy.ProxyServer"),
+        port, TCompactProtocol.Factory.class, TFramedTransport.Factory.class, 
prop);
     thread = new Thread() {
       @Override
       public void run() {
@@ -75,8 +75,7 @@ public class TestProxyInstanceOperations
   
   @Test
   public void testClassLoad() throws TException {
-    assertTrue(tpc.proxy().testClassLoad(userpass, 
"org.apache.accumulo.core.iterators.user.RegExFilter",
-        "org.apache.accumulo.core.iterators.Filter"));
+    assertTrue(tpc.proxy().testClassLoad(userpass, 
"org.apache.accumulo.core.iterators.user.RegExFilter", 
"org.apache.accumulo.core.iterators.Filter"));
   }
   
 }

Modified: 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyReadWrite.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyReadWrite.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyReadWrite.java
 (original)
+++ 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyReadWrite.java
 Fri Jan 25 19:51:44 2013
@@ -38,7 +38,9 @@ import org.apache.accumulo.proxy.thrift.
 import org.apache.accumulo.proxy.thrift.ScanResult;
 import org.apache.accumulo.proxy.thrift.TimeType;
 import org.apache.accumulo.proxy.thrift.UserPass;
+import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.server.TServer;
+import org.apache.thrift.transport.TFramedTransport;
 import org.junit.After;
 import org.junit.AfterClass;
 import org.junit.Before;
@@ -58,8 +60,8 @@ public class TestProxyReadWrite {
     Properties prop = new Properties();
     prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", 
"true");
     
-    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
-        Class.forName("org.apache.accumulo.proxy.ProxyServer"), port, prop);
+    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
 Class.forName("org.apache.accumulo.proxy.ProxyServer"),
+        port, TCompactProtocol.Factory.class, TFramedTransport.Factory.class, 
prop);
     thread = new Thread() {
       @Override
       public void run() {

Modified: 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java
 (original)
+++ 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxySecurityOperations.java
 Fri Jan 25 19:51:44 2013
@@ -25,14 +25,14 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Properties;
 
-import org.apache.accumulo.proxy.Proxy;
-import org.apache.accumulo.proxy.TestProxyClient;
 import org.apache.accumulo.proxy.thrift.SystemPermission;
 import org.apache.accumulo.proxy.thrift.TablePermission;
 import org.apache.accumulo.proxy.thrift.TimeType;
 import org.apache.accumulo.proxy.thrift.UserPass;
 import org.apache.thrift.TException;
+import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.server.TServer;
+import org.apache.thrift.transport.TFramedTransport;
 import org.junit.After;
 import org.junit.AfterClass;
 import org.junit.Before;
@@ -54,8 +54,8 @@ public class TestProxySecurityOperations
     Properties prop = new Properties();
     prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", 
"true");
     
-    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
-        Class.forName("org.apache.accumulo.proxy.ProxyServer"), port, prop);
+    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
 Class.forName("org.apache.accumulo.proxy.ProxyServer"),
+        port, TCompactProtocol.Factory.class, TFramedTransport.Factory.class, 
prop);
     thread = new Thread() {
       @Override
       public void run() {

Modified: 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java
URL: 
http://svn.apache.org/viewvc/accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java?rev=1438668&r1=1438667&r2=1438668&view=diff
==============================================================================
--- 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java
 (original)
+++ 
accumulo/trunk/proxy/src/test/java/org/apache/accumulo/proxy/TestProxyTableOperations.java
 Fri Jan 25 19:51:44 2013
@@ -30,13 +30,13 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 
-import org.apache.accumulo.proxy.Proxy;
-import org.apache.accumulo.proxy.TestProxyClient;
 import org.apache.accumulo.proxy.thrift.ColumnUpdate;
 import org.apache.accumulo.proxy.thrift.TimeType;
 import org.apache.accumulo.proxy.thrift.UserPass;
 import org.apache.thrift.TException;
+import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.server.TServer;
+import org.apache.thrift.transport.TFramedTransport;
 import org.junit.After;
 import org.junit.AfterClass;
 import org.junit.Before;
@@ -57,8 +57,8 @@ public class TestProxyTableOperations {
     Properties prop = new Properties();
     prop.setProperty("org.apache.accumulo.proxy.ProxyServer.useMockInstance", 
"true");
     
-    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
-        Class.forName("org.apache.accumulo.proxy.ProxyServer"), port, prop);
+    proxy = 
Proxy.createProxyServer(Class.forName("org.apache.accumulo.proxy.thrift.AccumuloProxy"),
 Class.forName("org.apache.accumulo.proxy.ProxyServer"),
+        port, TCompactProtocol.Factory.class, TFramedTransport.Factory.class, 
prop);
     thread = new Thread() {
       @Override
       public void run() {


Reply via email to