| 
					
				 | 
			
			
				@@ -64,7 +64,7 @@ namespace testing { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  public: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   AsyncQpsServerTest(const ServerConfig &config, int port) : shutdown_(false) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    char* server_address = NULL; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    char *server_address = NULL; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     gpr_join_host_port(&server_address, "::", port); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerBuilder builder; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -95,9 +95,9 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       threads_.push_back(std::thread([=]() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // Wait until work is available or we are shutting down 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         bool ok; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        void* got_tag; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        void *got_tag; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         while (srv_cq_->Next(&got_tag, &ok)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ServerRpcContext* ctx = detag(got_tag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          ServerRpcContext *ctx = detag(got_tag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // The tag is a pointer to an RPC context to invoke 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           if (ctx->RunNextState(ok) == false) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // this RPC context is done, so refresh it 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -133,23 +133,23 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerRpcContext() {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     virtual ~ServerRpcContext(){}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     virtual bool RunNextState(bool) = 0;  // next state, return false if done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    virtual void Reset() = 0;         // start this back at a clean state 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    virtual void Reset() = 0;             // start this back at a clean state 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  static void* tag(ServerRpcContext* func) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    return reinterpret_cast<void*>(func); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  static void *tag(ServerRpcContext *func) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return reinterpret_cast<void *>(func); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  static ServerRpcContext* detag(void* tag) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    return reinterpret_cast<ServerRpcContext*>(tag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  static ServerRpcContext *detag(void *tag) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return reinterpret_cast<ServerRpcContext *>(tag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   template <class RequestType, class ResponseType> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   class ServerRpcContextUnaryImpl GRPC_FINAL : public ServerRpcContext { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerRpcContextUnaryImpl( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        std::function<void(ServerContext*, RequestType*, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           grpc::ServerAsyncResponseWriter<ResponseType>*, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           void*)> request_method, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        std::function<grpc::Status(const RequestType*, ResponseType*)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        std::function<void(ServerContext *, RequestType *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                           grpc::ServerAsyncResponseWriter<ResponseType> *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                           void *)> request_method, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        std::function<grpc::Status(const RequestType *, ResponseType *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             invoke_method) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         : next_state_(&ServerRpcContextUnaryImpl::invoker), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           request_method_(request_method), 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -159,7 +159,9 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ~ServerRpcContextUnaryImpl() GRPC_OVERRIDE {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    bool RunNextState(bool ok) GRPC_OVERRIDE {return (this->*next_state_)(ok);} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    bool RunNextState(bool ok) GRPC_OVERRIDE { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return (this->*next_state_)(ok); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     void Reset() GRPC_OVERRIDE { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       srv_ctx_ = ServerContext(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       req_ = RequestType(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -192,10 +194,10 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerContext srv_ctx_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     RequestType req_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     bool (ServerRpcContextUnaryImpl::*next_state_)(bool); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    std::function<void(ServerContext*, RequestType*, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       grpc::ServerAsyncResponseWriter<ResponseType>*, void*)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    std::function<void(ServerContext *, RequestType *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                       grpc::ServerAsyncResponseWriter<ResponseType> *, void *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         request_method_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    std::function<grpc::Status(const RequestType*, ResponseType*)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    std::function<grpc::Status(const RequestType *, ResponseType *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         invoke_method_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     grpc::ServerAsyncResponseWriter<ResponseType> response_writer_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -204,9 +206,9 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   class ServerRpcContextStreamingImpl GRPC_FINAL : public ServerRpcContext { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerRpcContextStreamingImpl( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        std::function<void(ServerContext *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           grpc::ServerAsyncReaderWriter<ResponseType, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			   RequestType> *, void *)> request_method, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        std::function<void(ServerContext *, grpc::ServerAsyncReaderWriter< 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                ResponseType, RequestType> *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                           void *)> request_method, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         std::function<grpc::Status(const RequestType *, ResponseType *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             invoke_method) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         : next_state_(&ServerRpcContextStreamingImpl::request_done), 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -215,14 +217,15 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           stream_(&srv_ctx_) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       request_method_(&srv_ctx_, &stream_, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ~ServerRpcContextStreamingImpl() GRPC_OVERRIDE { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ~ServerRpcContextStreamingImpl() GRPC_OVERRIDE {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    bool RunNextState(bool ok) GRPC_OVERRIDE { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return (this->*next_state_)(ok); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    bool RunNextState(bool ok) GRPC_OVERRIDE {return (this->*next_state_)(ok);} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     void Reset() GRPC_OVERRIDE { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       srv_ctx_ = ServerContext(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       req_ = RequestType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      stream_ = grpc::ServerAsyncReaderWriter<ResponseType, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					      RequestType>(&srv_ctx_); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      stream_ = 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          grpc::ServerAsyncReaderWriter<ResponseType, RequestType>(&srv_ctx_); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // Then request the method 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       next_state_ = &ServerRpcContextStreamingImpl::request_done; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -241,47 +244,47 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     bool read_done(bool ok) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (ok) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// invoke the method 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	ResponseType response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// Call the RPC processing function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	grpc::Status status = invoke_method_(&req_, &response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// initiate the write 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	stream_.Write(response, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	next_state_ = &ServerRpcContextStreamingImpl::write_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } else {	// client has sent writes done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// finish the stream 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	stream_.Finish(Status::OK, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	next_state_ = &ServerRpcContextStreamingImpl::finish_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // invoke the method 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ResponseType response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // Call the RPC processing function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        grpc::Status status = invoke_method_(&req_, &response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // initiate the write 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stream_.Write(response, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        next_state_ = &ServerRpcContextStreamingImpl::write_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else {  // client has sent writes done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // finish the stream 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stream_.Finish(Status::OK, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        next_state_ = &ServerRpcContextStreamingImpl::finish_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     bool write_done(bool ok) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // now go back and get another streaming read! 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (ok) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	stream_.Read(&req_, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	next_state_ = &ServerRpcContextStreamingImpl::read_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	stream_.Finish(Status::OK, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	next_state_ = &ServerRpcContextStreamingImpl::finish_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stream_.Read(&req_, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        next_state_ = &ServerRpcContextStreamingImpl::read_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stream_.Finish(Status::OK, AsyncQpsServerTest::tag(this)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        next_state_ = &ServerRpcContextStreamingImpl::finish_done; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    bool finish_done(bool ok) {return false; /* reset the context */ } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    bool finish_done(bool ok) { return false; /* reset the context */ } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ServerContext srv_ctx_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     RequestType req_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     bool (ServerRpcContextStreamingImpl::*next_state_)(bool); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    std::function<void(ServerContext *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		       grpc::ServerAsyncReaderWriter<ResponseType, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		       RequestType> *, void *)> request_method_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    std::function<void( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ServerContext *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        grpc::ServerAsyncReaderWriter<ResponseType, RequestType> *, void *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        request_method_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     std::function<grpc::Status(const RequestType *, ResponseType *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         invoke_method_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    grpc::ServerAsyncReaderWriter<ResponseType,RequestType> stream_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    grpc::ServerAsyncReaderWriter<ResponseType, RequestType> stream_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  static Status ProcessRPC(const SimpleRequest* request, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			   SimpleResponse* response) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  static Status ProcessRPC(const SimpleRequest *request, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                           SimpleResponse *response) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (request->response_size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (!SetPayload(request->response_type(), request->response_size(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       response->mutable_payload())) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -294,19 +297,20 @@ class AsyncQpsServerTest : public Server { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   std::unique_ptr<grpc::Server> server_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   std::unique_ptr<grpc::ServerCompletionQueue> srv_cq_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   TestService::AsyncService async_service_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  std::function<void(ServerContext*, SimpleRequest*, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                     grpc::ServerAsyncResponseWriter<SimpleResponse>*, void*)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  std::function<void(ServerContext *, SimpleRequest *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     grpc::ServerAsyncResponseWriter<SimpleResponse> *, void *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       request_unary_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  std::function<void(ServerContext*, grpc::ServerAsyncReaderWriter< 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		     SimpleResponse,SimpleRequest>*, void*)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  std::function<void( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ServerContext *, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      grpc::ServerAsyncReaderWriter<SimpleResponse, SimpleRequest> *, void *)> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       request_streaming_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  std::forward_list<ServerRpcContext*> contexts_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  std::forward_list<ServerRpcContext *> contexts_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   std::mutex shutdown_mutex_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   bool shutdown_; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-std::unique_ptr<Server> CreateAsyncServer(const ServerConfig& config, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+std::unique_ptr<Server> CreateAsyncServer(const ServerConfig &config, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                           int port) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   return std::unique_ptr<Server>(new AsyncQpsServerTest(config, port)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |