You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by br...@apache.org on 2010/10/13 00:32:24 UTC

svn commit: r1021941 - in /incubator/thrift/trunk/lib/java/src/org/apache/thrift/server: THsHaServer.java TNonblockingServer.java TServer.java TSimpleServer.java TThreadPoolServer.java

Author: bryanduxbury
Date: Tue Oct 12 22:32:23 2010
New Revision: 1021941

URL: http://svn.apache.org/viewvc?rev=1021941&view=rev
Log:
THRIFT-951. java: Add a new isServing() method to TServer

Modified:
    incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/THsHaServer.java
    incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TNonblockingServer.java
    incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TServer.java
    incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TSimpleServer.java
    incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java

Modified: incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/THsHaServer.java
URL: http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/THsHaServer.java?rev=1021941&r1=1021940&r2=1021941&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/THsHaServer.java (original)
+++ incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/THsHaServer.java Tue Oct 12 22:32:23 2010
@@ -237,11 +237,15 @@ public class THsHaServer extends TNonblo
       return;
     }
 
+    setServing(true);
+
     // this will block while we serve
     joinSelector();
 
     gracefullyShutdownInvokerPool();
 
+    setServing(false);
+
     // do a little cleanup
     stopListening();
 

Modified: incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TNonblockingServer.java
URL: http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TNonblockingServer.java?rev=1021941&r1=1021940&r2=1021941&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TNonblockingServer.java (original)
+++ incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TNonblockingServer.java Tue Oct 12 22:32:23 2010
@@ -178,9 +178,13 @@ public class TNonblockingServer extends 
       return;
     }
 
+    setServing(true);
+
     // this will block while we serve
     joinSelector();
 
+    setServing(false);
+
     // do a little cleanup
     stopListening();
   }

Modified: incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TServer.java
URL: http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TServer.java?rev=1021941&r1=1021940&r2=1021941&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TServer.java (original)
+++ incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TServer.java Tue Oct 12 22:32:23 2010
@@ -61,6 +61,8 @@ public abstract class TServer {
    */
   protected TProtocolFactory outputProtocolFactory_;
 
+  private boolean isServing;
+
   /**
    * Default constructors.
    */
@@ -123,4 +125,11 @@ public abstract class TServer {
    */
   public void stop() {}
 
+  public boolean isServing() {
+    return isServing;
+  }
+
+  protected void setServing(boolean serving) {
+    isServing = serving;
+  }
 }

Modified: incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TSimpleServer.java
URL: http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TSimpleServer.java?rev=1021941&r1=1021940&r2=1021941&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TSimpleServer.java (original)
+++ incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TSimpleServer.java Tue Oct 12 22:32:23 2010
@@ -26,9 +26,8 @@ import org.apache.thrift.protocol.TProto
 import org.apache.thrift.protocol.TProtocolFactory;
 import org.apache.thrift.transport.TServerTransport;
 import org.apache.thrift.transport.TTransport;
-import org.apache.thrift.transport.TTransportFactory;
 import org.apache.thrift.transport.TTransportException;
-
+import org.apache.thrift.transport.TTransportFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -98,6 +97,8 @@ public class TSimpleServer extends TServ
       return;
     }
 
+    setServing(true);
+
     while (!stopped_) {
       TTransport client = null;
       TProcessor processor = null;
@@ -136,6 +137,7 @@ public class TSimpleServer extends TServ
       }
 
     }
+    setServing(false);
   }
 
   public void stop() {

Modified: incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java
URL: http://svn.apache.org/viewvc/incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java?rev=1021941&r1=1021940&r2=1021941&view=diff
==============================================================================
--- incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java (original)
+++ incubator/thrift/trunk/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java Tue Oct 12 22:32:23 2010
@@ -19,26 +19,25 @@
 
 package org.apache.thrift.server;
 
+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;
+
 import org.apache.thrift.TException;
 import org.apache.thrift.TProcessor;
 import org.apache.thrift.TProcessorFactory;
+import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.protocol.TProtocol;
 import org.apache.thrift.protocol.TProtocolFactory;
-import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.transport.TServerTransport;
 import org.apache.thrift.transport.TTransport;
 import org.apache.thrift.transport.TTransportException;
 import org.apache.thrift.transport.TTransportFactory;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-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;
-
 
 /**
  * Server which uses Java's built in ThreadPool management to spawn off
@@ -178,6 +177,7 @@ public class TThreadPoolServer extends T
     }
 
     stopped_ = false;
+    setServing(true);
     while (!stopped_) {
       int failureCount = 0;
       try {
@@ -210,6 +210,7 @@ public class TThreadPoolServer extends T
         now = newnow;
       }
     }
+    setServing(false);
   }
 
   public void stop() {