THRIFT-3031 Java: migrate "shouldStop" flag to TServer

Patch: John Wang & Roger Meier
diff --git a/lib/java/src/org/apache/thrift/server/TNonblockingServer.java b/lib/java/src/org/apache/thrift/server/TNonblockingServer.java
index 10a8eba..fe0365a 100644
--- a/lib/java/src/org/apache/thrift/server/TNonblockingServer.java
+++ b/lib/java/src/org/apache/thrift/server/TNonblockingServer.java
@@ -47,10 +47,6 @@
     }
   }
 
-  // Flag for stopping the server
-  // Please see THRIFT-1795 for the usage of this flag
-  private volatile boolean stopped_ = false;
-
   private SelectAcceptThread selectAcceptThread_;
 
   public TNonblockingServer(AbstractNonblockingServerArgs args) {
diff --git a/lib/java/src/org/apache/thrift/server/TServer.java b/lib/java/src/org/apache/thrift/server/TServer.java
index a85a429..80f4f86 100644
--- a/lib/java/src/org/apache/thrift/server/TServer.java
+++ b/lib/java/src/org/apache/thrift/server/TServer.java
@@ -127,6 +127,10 @@
 
   protected TServerEventHandler eventHandler_;
 
+  // Flag for stopping the server
+  // Please see THRIFT-1795 for the usage of this flag
+  protected volatile boolean stopped_ = false;
+
   protected TServer(AbstractServerArgs args) {
     processorFactory_ = args.processorFactory;
     serverTransport_ = args.serverTransport;
@@ -162,4 +166,12 @@
   public TServerEventHandler getEventHandler() {
     return eventHandler_;
   }
+
+  public boolean getShouldStop() {
+    return this.stopped_;
+  }
+
+  public void setShouldStop(boolean shouldStop) {
+    this.stopped_ = shouldStop;
+  }
 }
diff --git a/lib/java/src/org/apache/thrift/server/TSimpleServer.java b/lib/java/src/org/apache/thrift/server/TSimpleServer.java
index 4dfc176..e815b2c 100644
--- a/lib/java/src/org/apache/thrift/server/TSimpleServer.java
+++ b/lib/java/src/org/apache/thrift/server/TSimpleServer.java
@@ -35,9 +35,6 @@
 
   private static final Logger LOGGER = LoggerFactory.getLogger(TSimpleServer.class.getName());
 
-  // Please see THRIFT-1795 for the usage of this flag
-  private volatile boolean stopped_ = false;
-
   public TSimpleServer(AbstractServerArgs args) {
     super(args);
   }
diff --git a/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java b/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java
index adac27e..8009118 100755
--- a/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java
+++ b/lib/java/src/org/apache/thrift/server/TThreadPoolServer.java
@@ -100,10 +100,6 @@
   // Executor service for handling client connections
   private ExecutorService executorService_;
 
-  // Flag for stopping the server
-  // Please see THRIFT-1795 for the usage of this flag
-  private volatile boolean stopped_ = false;
-
   private final TimeUnit stopTimeoutUnit;
 
   private final long stopTimeoutVal;
diff --git a/lib/java/src/org/apache/thrift/server/TThreadedSelectorServer.java b/lib/java/src/org/apache/thrift/server/TThreadedSelectorServer.java
index 9eb9f90..8737413 100644
--- a/lib/java/src/org/apache/thrift/server/TThreadedSelectorServer.java
+++ b/lib/java/src/org/apache/thrift/server/TThreadedSelectorServer.java
@@ -180,10 +180,6 @@
     }
   }
 
-  // Flag for stopping the server
-  // Please see THRIFT-1795 for the usage of this flag
-  private volatile boolean stopped_ = false;
-
   // The thread handling all accepts
   private AcceptThread acceptThread;