diff options
author | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2023-11-20 14:16:37 +0100 |
---|---|---|
committer | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2023-11-21 10:21:29 +0100 |
commit | 37968f38e8dc07a27941c52204692c6f3254c22a (patch) | |
tree | 984c0d9d6ca417dc74d6e651aad0ea59505364a3 /src/buildtool/serve_api/remote/source_tree_client.cpp | |
parent | 5fee8034265676b903618d19a7d7d65bb8d4b023 (diff) | |
download | justbuild-37968f38e8dc07a27941c52204692c6f3254c22a.tar.gz |
just serve: Implement client-side ServeContent and extend serve API
Diffstat (limited to 'src/buildtool/serve_api/remote/source_tree_client.cpp')
-rw-r--r-- | src/buildtool/serve_api/remote/source_tree_client.cpp | 22 |
1 files changed, 22 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 a2ff930f..e3cc0756 100644 --- a/src/buildtool/serve_api/remote/source_tree_client.cpp +++ b/src/buildtool/serve_api/remote/source_tree_client.cpp @@ -120,3 +120,25 @@ auto SourceTreeClient::ServeArchiveTree( } return response.tree(); } + +auto SourceTreeClient::ServeContent(std::string const& content) -> bool { + justbuild::just_serve::ServeContentRequest request{}; + request.set_content(content); + + grpc::ClientContext context; + justbuild::just_serve::ServeContentResponse response; + grpc::Status status = stub_->ServeContent(&context, request, &response); + + if (not status.ok()) { + LogStatus(&logger_, LogLevel::Debug, status); + return false; + } + if (response.status() != + ::justbuild::just_serve::ServeContentResponse::OK) { + logger_.Emit(LogLevel::Debug, + "ServeContent response returned with {}", + static_cast<int>(response.status())); + return false; + } + return true; +} |