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() {