aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar yang-g <yangg@google.com>2016-12-12 14:32:09 -0800
committerGravatar yang-g <yangg@google.com>2016-12-27 15:37:59 -0800
commitad327642192363808c378b775ddcd34b86294443 (patch)
treea8965f516a640b6d1ff3ca96d0c5472dc97c81e7 /src
parentc8a49d29560be146bb81f421b8dd646c7f4a4f46 (diff)
sync test pass
Diffstat (limited to 'src')
-rw-r--r--src/cpp/server/default_health_check_service.cc7
-rw-r--r--src/cpp/server/server_cc.cc29
2 files changed, 20 insertions, 16 deletions
diff --git a/src/cpp/server/default_health_check_service.cc b/src/cpp/server/default_health_check_service.cc
index 704243e831..ae10ec92c6 100644
--- a/src/cpp/server/default_health_check_service.cc
+++ b/src/cpp/server/default_health_check_service.cc
@@ -31,9 +31,11 @@
*
*/
+#include <memory>
#include <mutex>
#include <grpc++/impl/codegen/method_handler_impl.h>
+#include <grpc/support/log.h>
#include "src/cpp/server/default_health_check_service.h"
@@ -57,11 +59,12 @@ DefaultHealthCheckService::SyncHealthCheckServiceImpl::
Status DefaultHealthCheckService::SyncHealthCheckServiceImpl::Check(
ServerContext* context, const ByteBuffer* request, ByteBuffer* response) {
- // TODO nanopb
+ // TODO nanopb part
return Status::OK;
}
-DefaultHealthCheckService::DefaultHealthCheckService() {
+DefaultHealthCheckService::DefaultHealthCheckService()
+ : sync_service_(new SyncHealthCheckServiceImpl(this)) {
services_map_.emplace("", true);
}
diff --git a/src/cpp/server/server_cc.cc b/src/cpp/server/server_cc.cc
index 4eaafeabb8..b8558cfc3d 100644
--- a/src/cpp/server/server_cc.cc
+++ b/src/cpp/server/server_cc.cc
@@ -360,7 +360,8 @@ Server::Server(
shutdown_notified_(false),
has_generic_service_(false),
server_(nullptr),
- server_initializer_(new ServerInitializer(this)) {
+ server_initializer_(new ServerInitializer(this)),
+ health_check_service_disabled_(false) {
g_gli_initializer.summon();
gpr_once_init(&g_once_init_callbacks, InitGlobalCallbacks);
global_callbacks_ = g_callbacks;
@@ -376,12 +377,11 @@ Server::Server(
grpc_channel_args channel_args;
args->SetChannelArgs(&channel_args);
- bool health_check_service_disabled = false;
for (size_t i = 0; i < channel_args.num_args; i++) {
if (0 == strcmp(channel_args.args[i].key,
kDefaultHealthCheckServiceInterfaceArg)) {
if (channel_args.args[i].value.pointer.p == nullptr) {
- health_check_service_disabled = true;
+ health_check_service_disabled_ = true;
} else {
health_check_service_.reset(static_cast<HealthCheckServiceInterface*>(
channel_args.args[i].value.pointer.p));
@@ -389,17 +389,6 @@ Server::Server(
break;
}
}
- // Only create default health check service when user did not provide an
- // explicit one.
- if (health_check_service_ == nullptr && !health_check_service_disabled &&
- DefaultHealthCheckServiceEnabled()) {
- auto* default_hc_service = new DefaultHealthCheckService;
- health_check_service_.reset(default_hc_service);
- if (!sync_server_cqs->empty()) { // Has sync methods.
- grpc::string host;
- RegisterService(&host, default_hc_service->GetSyncHealthCheckService());
- }
- }
server_ = grpc_server_create(&channel_args, nullptr);
}
@@ -506,6 +495,18 @@ int Server::AddListeningPort(const grpc::string& addr,
bool Server::Start(ServerCompletionQueue** cqs, size_t num_cqs) {
GPR_ASSERT(!started_);
started_ = true;
+
+ // Only create default health check service when user did not provide an
+ // explicit one.
+ if (health_check_service_ == nullptr && !health_check_service_disabled_ &&
+ DefaultHealthCheckServiceEnabled()) {
+ auto* default_hc_service = new DefaultHealthCheckService;
+ health_check_service_.reset(default_hc_service);
+ if (!sync_server_cqs_->empty()) { // Has sync methods.
+ RegisterService(nullptr, default_hc_service->GetSyncHealthCheckService());
+ }
+ }
+
grpc_server_start(server_);
if (!has_generic_service_) {