summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/local/local_api.hpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-05-24 12:08:48 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-05-27 16:36:58 +0200
commitcd9b1aab78186a1b9a01dbd5319cfd9faafe4662 (patch)
treec7d475f718a17663b58ffc5ee816fd461e811245 /src/buildtool/execution_api/local/local_api.hpp
parent1c6acd97737f4d49b5e0d1dbb97e3c1d75d0e145 (diff)
downloadjustbuild-cd9b1aab78186a1b9a01dbd5319cfd9faafe4662.tar.gz
Use common interface for stream dumping
...in LocalApi and BazelApi.
Diffstat (limited to 'src/buildtool/execution_api/local/local_api.hpp')
-rw-r--r--src/buildtool/execution_api/local/local_api.hpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/buildtool/execution_api/local/local_api.hpp b/src/buildtool/execution_api/local/local_api.hpp
index c81b75c1..b9be5aed 100644
--- a/src/buildtool/execution_api/local/local_api.hpp
+++ b/src/buildtool/execution_api/local/local_api.hpp
@@ -37,6 +37,7 @@
#include "src/buildtool/execution_api/bazel_msg/blob_tree.hpp"
#include "src/buildtool/execution_api/common/common_api.hpp"
#include "src/buildtool/execution_api/common/execution_api.hpp"
+#include "src/buildtool/execution_api/common/stream_dumper.hpp"
#include "src/buildtool/execution_api/common/tree_reader.hpp"
#include "src/buildtool/execution_api/execution_service/cas_utils.hpp"
#include "src/buildtool/execution_api/git/git_api.hpp"
@@ -141,13 +142,13 @@ class LocalApi final : public IExecutionApi {
std::vector<Artifact::ObjectInfo> const& artifacts_info,
std::vector<int> const& fds,
bool raw_tree) noexcept -> bool final {
+ auto dumper = StreamDumper<LocalCasReader>{storage_->CAS()};
return CommonRetrieveToFds(
artifacts_info,
fds,
- [&cas = storage_->CAS(), &raw_tree](
- Artifact::ObjectInfo const& info,
- gsl::not_null<FILE*> const& out) {
- return cas.DumpToStream(info, out, raw_tree);
+ [&dumper, &raw_tree](Artifact::ObjectInfo const& info,
+ gsl::not_null<FILE*> const& out) {
+ return dumper.DumpToStream(info, out, raw_tree);
},
[&repo_config = repo_config_, &raw_tree](
Artifact::ObjectInfo const& info, int fd) {