From 686a13142b816dfa334bb85f3ffdcc62a81a3bb4 Mon Sep 17 00:00:00 2001 From: Maksim Denisov Date: Thu, 23 Jan 2025 17:11:39 +0100 Subject: ByteStreamUtils: Use ArtifactDigest --- .../execution_api/common/bytestream_utils.hpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'src/buildtool/execution_api/common/bytestream_utils.hpp') diff --git a/src/buildtool/execution_api/common/bytestream_utils.hpp b/src/buildtool/execution_api/common/bytestream_utils.hpp index 232c6728..16904f4f 100644 --- a/src/buildtool/execution_api/common/bytestream_utils.hpp +++ b/src/buildtool/execution_api/common/bytestream_utils.hpp @@ -16,10 +16,13 @@ #define INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_BYTESTREAM_UTILS_HPP #include -#include #include #include +#include "src/buildtool/common/artifact_digest.hpp" +#include "src/buildtool/crypto/hash_function.hpp" +#include "src/utils/cpp/expected.hpp" + namespace build::bazel::remote::execution::v2 { class Digest; } @@ -43,6 +46,9 @@ class ByteStreamUtils final { explicit ReadRequest(std::string instance_name, bazel_re::Digest const& digest) noexcept; + explicit ReadRequest(std::string instance_name, + ArtifactDigest const& digest) noexcept; + [[nodiscard]] auto ToString() && noexcept -> std::string; [[nodiscard]] static auto FromString( @@ -53,12 +59,13 @@ class ByteStreamUtils final { return instance_name_; } - [[nodiscard]] auto GetDigest() const noexcept -> bazel_re::Digest; + [[nodiscard]] auto GetDigest(HashFunction::Type hash_type) + const noexcept -> expected; private: std::string instance_name_; std::string hash_; - std::int64_t size_ = 0; + std::size_t size_ = 0; ReadRequest() = default; }; @@ -74,6 +81,10 @@ class ByteStreamUtils final { std::string uuid, bazel_re::Digest const& digest) noexcept; + explicit WriteRequest(std::string instance_name, + std::string uuid, + ArtifactDigest const& digest) noexcept; + [[nodiscard]] auto ToString() && noexcept -> std::string; [[nodiscard]] static auto FromString( @@ -88,13 +99,14 @@ class ByteStreamUtils final { return uuid_; } - [[nodiscard]] auto GetDigest() const noexcept -> bazel_re::Digest; + [[nodiscard]] auto GetDigest(HashFunction::Type hash_type) + const noexcept -> expected; private: std::string instance_name_; std::string uuid_; std::string hash_; - std::int64_t size_ = 0; + std::size_t size_ = 0; WriteRequest() = default; }; -- cgit v1.2.3