From 77ec72691a29005385fe3441a97ebdb61d1ebeea Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@41a61cd8-c433-0410-bb1c-e256eeef9e11> Date: Tue, 15 Jan 2008 03:01:45 +0000 Subject: [PATCH] r1467@opsdev009 (orig r77715): mcslee | 2008-01-14 18:59:12 -0800 Add some more TThreadPoolServer constructors Summary: Change the default to Executors.newCachedThreadPool() which is a good default and basically what we should always want. Reviewed By: dreiss Test Plan: Run a Java server with default args git-svn-id: http://svn.facebook.com/svnroot/thrift/trunk@752 41a61cd8-c433-0410-bb1c-e256eeef9e11 --- lib/java/src/server/TThreadPoolServer.java | 47 +++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/lib/java/src/server/TThreadPoolServer.java b/lib/java/src/server/TThreadPoolServer.java index 343af6b..d1b5e09 100644 --- a/lib/java/src/server/TThreadPoolServer.java +++ b/lib/java/src/server/TThreadPoolServer.java @@ -18,6 +18,7 @@ import com.facebook.thrift.transport.TTransportException; import com.facebook.thrift.transport.TTransportFactory; import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; import java.util.concurrent.SynchronousQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -52,16 +53,14 @@ public class TThreadPoolServer extends TServer { TServerTransport serverTransport) { this(processor, serverTransport, new TTransportFactory(), new TTransportFactory(), - new TBinaryProtocol.Factory(), new TBinaryProtocol.Factory(), - new Options()); + new TBinaryProtocol.Factory(), new TBinaryProtocol.Factory()); } public TThreadPoolServer(TProcessorFactory processorFactory, - TServerTransport serverTransport) { + TServerTransport serverTransport) { this(processorFactory, serverTransport, new TTransportFactory(), new TTransportFactory(), - new TBinaryProtocol.Factory(), new TBinaryProtocol.Factory(), - new Options()); + new TBinaryProtocol.Factory(), new TBinaryProtocol.Factory()); } public TThreadPoolServer(TProcessor processor, @@ -69,8 +68,7 @@ public class TThreadPoolServer extends TServer { TProtocolFactory protocolFactory) { this(processor, serverTransport, new TTransportFactory(), new TTransportFactory(), - protocolFactory, protocolFactory, - new Options()); + protocolFactory, protocolFactory); } public TThreadPoolServer(TProcessor processor, @@ -79,20 +77,41 @@ public class TThreadPoolServer extends TServer { TProtocolFactory protocolFactory) { this(processor, serverTransport, transportFactory, transportFactory, - protocolFactory, protocolFactory, - new Options()); + protocolFactory, protocolFactory); } public TThreadPoolServer(TProcessorFactory processorFactory, - TServerTransport serverTransport, - TTransportFactory transportFactory, - TProtocolFactory protocolFactory) { + TServerTransport serverTransport, + TTransportFactory transportFactory, + TProtocolFactory protocolFactory) { this(processorFactory, serverTransport, transportFactory, transportFactory, - protocolFactory, protocolFactory, - new Options()); + protocolFactory, protocolFactory); } + public TThreadPoolServer(TProcessor processor, + TServerTransport serverTransport, + TTransportFactory inputTransportFactory, + TTransportFactory outputTransportFactory, + TProtocolFactory inputProtocolFactory, + TProtocolFactory outputProtocolFactory) { + this(new TProcessorFactory(processor), serverTransport, + inputTransportFactory, outputTransportFactory, + inputProtocolFactory, outputProtocolFactory); + } + + public TThreadPoolServer(TProcessorFactory processorFactory, + TServerTransport serverTransport, + TTransportFactory inputTransportFactory, + TTransportFactory outputTransportFactory, + TProtocolFactory inputProtocolFactory, + TProtocolFactory outputProtocolFactory) { + super(processorFactory, serverTransport, + inputTransportFactory, outputTransportFactory, + inputProtocolFactory, outputProtocolFactory); + options_ = new Options(); + executorService_ = Executors.newCachedThreadPool(); + } public TThreadPoolServer(TProcessor processor, TServerTransport serverTransport, -- 2.11.4.GIT