diff options
Diffstat (limited to 'src/buildtool/serve_api/remote/source_tree_client.cpp')
-rw-r--r-- | src/buildtool/serve_api/remote/source_tree_client.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/buildtool/serve_api/remote/source_tree_client.cpp b/src/buildtool/serve_api/remote/source_tree_client.cpp index e3cc0756..8f4d4960 100644 --- a/src/buildtool/serve_api/remote/source_tree_client.cpp +++ b/src/buildtool/serve_api/remote/source_tree_client.cpp @@ -142,3 +142,24 @@ auto SourceTreeClient::ServeContent(std::string const& content) -> bool { } return true; } + +auto SourceTreeClient::ServeTree(std::string const& tree_id) -> bool { + justbuild::just_serve::ServeTreeRequest request{}; + request.set_tree(tree_id); + + grpc::ClientContext context; + justbuild::just_serve::ServeTreeResponse response; + grpc::Status status = stub_->ServeTree(&context, request, &response); + + if (not status.ok()) { + LogStatus(&logger_, LogLevel::Debug, status); + return false; + } + if (response.status() != ::justbuild::just_serve::ServeTreeResponse::OK) { + logger_.Emit(LogLevel::Debug, + "ServeTree response returned with {}", + static_cast<int>(response.status())); + return false; + } + return true; +} |