summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/local/local_api.hpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-07-23 18:20:44 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-08-30 17:17:09 +0200
commit0df9bfcbcda9f87097bd313819be0be2cf5fa892 (patch)
treebcffd45a05d8994b2e6e5bd9cd5b157eb69802c3 /src/buildtool/execution_api/local/local_api.hpp
parentd84ab0c8f1e0df651c2d1f6cd9f4bdc03c25932c (diff)
downloadjustbuild-0df9bfcbcda9f87097bd313819be0be2cf5fa892.tar.gz
Replace bazel_re::Digest in CASUtils
...with ArtifactDigest
Diffstat (limited to 'src/buildtool/execution_api/local/local_api.hpp')
-rw-r--r--src/buildtool/execution_api/local/local_api.hpp35
1 files changed, 8 insertions, 27 deletions
diff --git a/src/buildtool/execution_api/local/local_api.hpp b/src/buildtool/execution_api/local/local_api.hpp
index 35b7b768..f1515418 100644
--- a/src/buildtool/execution_api/local/local_api.hpp
+++ b/src/buildtool/execution_api/local/local_api.hpp
@@ -331,9 +331,8 @@ class LocalApi final : public IExecutionApi {
[[nodiscard]] auto SplitBlob(ArtifactDigest const& blob_digest)
const noexcept -> std::optional<std::vector<ArtifactDigest>> final {
Logger::Log(LogLevel::Debug, "SplitBlob({})", blob_digest.hash());
- auto split_result = CASUtils::SplitBlobFastCDC(
- static_cast<bazel_re::Digest>(blob_digest),
- *local_context_.storage);
+ auto split_result =
+ CASUtils::SplitBlobFastCDC(blob_digest, *local_context_.storage);
if (not split_result) {
Logger::Log(LogLevel::Error, split_result.error().error_message());
return std::nullopt;
@@ -345,20 +344,12 @@ class LocalApi final : public IExecutionApi {
<< blob_digest.size() << " into " << chunk_digests.size()
<< " chunks: [ ";
for (auto const& chunk_digest : chunk_digests) {
- ss << chunk_digest.hash() << ":" << chunk_digest.size_bytes()
- << " ";
+ ss << chunk_digest.hash() << ":" << chunk_digest.size() << " ";
}
ss << "]";
return ss.str();
});
- auto artifact_digests = std::vector<ArtifactDigest>{};
- artifact_digests.reserve(chunk_digests.size());
- std::transform(
- chunk_digests.cbegin(),
- chunk_digests.cend(),
- std::back_inserter(artifact_digests),
- [](auto const& digest) { return ArtifactDigest{digest}; });
- return artifact_digests;
+ return *std::move(split_result);
}
[[nodiscard]] auto BlobSplitSupport() const noexcept -> bool final {
@@ -373,24 +364,14 @@ class LocalApi final : public IExecutionApi {
"SpliceBlob({}, {} chunks)",
blob_digest.hash(),
chunk_digests.size());
- auto digests = std::vector<bazel_re::Digest>{};
- digests.reserve(chunk_digests.size());
- std::transform(
- chunk_digests.cbegin(),
- chunk_digests.cend(),
- std::back_inserter(digests),
- [](auto const& artifact_digest) {
- return static_cast<bazel_re::Digest>(artifact_digest);
- });
- auto splice_result =
- CASUtils::SpliceBlob(static_cast<bazel_re::Digest>(blob_digest),
- digests,
- *local_context_.storage);
+
+ auto splice_result = CASUtils::SpliceBlob(
+ blob_digest, chunk_digests, *local_context_.storage);
if (not splice_result) {
Logger::Log(LogLevel::Error, splice_result.error().error_message());
return std::nullopt;
}
- return ArtifactDigest{*std::move(splice_result)};
+ return *std::move(splice_result);
}
[[nodiscard]] auto BlobSpliceSupport() const noexcept -> bool final {