|
|
|
@@ -418,14 +418,18 @@ bool AbstractNode::InitClientToScheduler() { |
|
|
|
client_to_scheduler_ = std::make_shared<TcpClient>(scheduler_host, scheduler_port); |
|
|
|
client_to_scheduler_->SetMessageCallback( |
|
|
|
[&](std::shared_ptr<MessageMeta> meta, const Protos &protos, const void *data, size_t size) { |
|
|
|
if (handlers_.count(meta->cmd()) == 0) { |
|
|
|
MS_LOG(EXCEPTION) << "The cmd:" << meta->cmd() << " is not supported!"; |
|
|
|
} |
|
|
|
if (handlers_[meta->cmd()] != nullptr) { |
|
|
|
const auto &handler_ptr = handlers_[meta->cmd()]; |
|
|
|
(this->*handler_ptr)(meta, data, size); |
|
|
|
try { |
|
|
|
if (handlers_.count(meta->cmd()) == 0) { |
|
|
|
MS_LOG(EXCEPTION) << "The cmd:" << meta->cmd() << " is not supported!"; |
|
|
|
} |
|
|
|
if (handlers_[meta->cmd()] != nullptr) { |
|
|
|
const auto &handler_ptr = handlers_[meta->cmd()]; |
|
|
|
(this->*handler_ptr)(meta, data, size); |
|
|
|
} |
|
|
|
NotifyMessageArrival(meta); |
|
|
|
} catch (const std::exception &e) { |
|
|
|
MsException::Instance().SetException(); |
|
|
|
} |
|
|
|
NotifyMessageArrival(meta); |
|
|
|
}); |
|
|
|
|
|
|
|
client_to_scheduler_->Init(); |
|
|
|
|