diff options
author | Maksim Denisov <denisov.maksim@huawei.com> | 2025-02-20 12:44:37 +0100 |
---|---|---|
committer | Maksim Denisov <denisov.maksim@huawei.com> | 2025-02-21 14:46:30 +0100 |
commit | 185d67664ff4e6cd87a4190ce233bd0cf1a40f98 (patch) | |
tree | aba8721bc7c6723e8ae7f35999ec658bee56f86b /src/buildtool/execution_api/common | |
parent | ff9a8dfbe17f88cec92a00f00d2dbfb9015e342b (diff) | |
download | justbuild-185d67664ff4e6cd87a4190ce233bd0cf1a40f98.tar.gz |
ByteStreamUtils: Simplify ReadRequest and WriteRequest
Diffstat (limited to 'src/buildtool/execution_api/common')
-rw-r--r-- | src/buildtool/execution_api/common/bytestream_utils.cpp | 34 | ||||
-rw-r--r-- | src/buildtool/execution_api/common/bytestream_utils.hpp | 20 |
2 files changed, 21 insertions, 33 deletions
diff --git a/src/buildtool/execution_api/common/bytestream_utils.cpp b/src/buildtool/execution_api/common/bytestream_utils.cpp index 13759eba..93acede8 100644 --- a/src/buildtool/execution_api/common/bytestream_utils.cpp +++ b/src/buildtool/execution_api/common/bytestream_utils.cpp @@ -60,18 +60,14 @@ namespace { } } // namespace -ByteStreamUtils::ReadRequest::ReadRequest(std::string instance_name, - ArtifactDigest const& digest) noexcept - : instance_name_{std::move(instance_name)}, - hash_{ArtifactDigestFactory::ToBazel(digest).hash()}, - size_{digest.size()} {} - -auto ByteStreamUtils::ReadRequest::ToString() && noexcept -> std::string { +auto ByteStreamUtils::ReadRequest::ToString( + std::string instance_name, + ArtifactDigest const& digest) noexcept -> std::string { return fmt::format("{}/{}/{}/{}", - std::move(instance_name_), + std::move(instance_name), ByteStreamUtils::kBlobs, - std::move(hash_), - size_); + ArtifactDigestFactory::ToBazel(digest).hash(), + digest.size()); } auto ByteStreamUtils::ReadRequest::FromString( @@ -105,23 +101,17 @@ auto ByteStreamUtils::ReadRequest::GetDigest(HashFunction::Type hash_type) return ArtifactDigestFactory::FromBazel(hash_type, bazel_digest); } -ByteStreamUtils::WriteRequest::WriteRequest( +auto ByteStreamUtils::WriteRequest::ToString( std::string instance_name, std::string uuid, - ArtifactDigest const& digest) noexcept - : instance_name_{std::move(instance_name)}, - uuid_{std::move(uuid)}, - hash_{ArtifactDigestFactory::ToBazel(digest).hash()}, - size_{digest.size()} {} - -auto ByteStreamUtils::WriteRequest::ToString() && noexcept -> std::string { + ArtifactDigest const& digest) noexcept -> std::string { return fmt::format("{}/{}/{}/{}/{}/{}", - std::move(instance_name_), + std::move(instance_name), ByteStreamUtils::kUploads, - std::move(uuid_), + std::move(uuid), ByteStreamUtils::kBlobs, - std::move(hash_), - size_); + ArtifactDigestFactory::ToBazel(digest).hash(), + digest.size()); } auto ByteStreamUtils::WriteRequest::FromString( diff --git a/src/buildtool/execution_api/common/bytestream_utils.hpp b/src/buildtool/execution_api/common/bytestream_utils.hpp index a9d5ff59..52d96a25 100644 --- a/src/buildtool/execution_api/common/bytestream_utils.hpp +++ b/src/buildtool/execution_api/common/bytestream_utils.hpp @@ -38,10 +38,9 @@ class ByteStreamUtils final { /// "instance_name_example/blobs/62183d7a696acf7e69e218efc82c93135f8c85f895/4424712" class ReadRequest final { public: - explicit ReadRequest(std::string instance_name, - ArtifactDigest const& digest) noexcept; - - [[nodiscard]] auto ToString() && noexcept -> std::string; + [[nodiscard]] static auto ToString( + std::string instance_name, + ArtifactDigest const& digest) noexcept -> std::string; [[nodiscard]] static auto FromString( std::string const& request) noexcept -> std::optional<ReadRequest>; @@ -59,7 +58,7 @@ class ByteStreamUtils final { std::string hash_; std::size_t size_ = 0; - ReadRequest() = default; + explicit ReadRequest() = default; }; /// \brief Create a write request for the bytestream service to be @@ -69,11 +68,10 @@ class ByteStreamUtils final { /// "instance_name_example/uploads/c4f03510-7d56-4490-8934-01bce1b1288e/blobs/62183d7a696acf7e69e218efc82c93135f8c85f895/4424712" class WriteRequest final { public: - explicit WriteRequest(std::string instance_name, - std::string uuid, - ArtifactDigest const& digest) noexcept; - - [[nodiscard]] auto ToString() && noexcept -> std::string; + [[nodiscard]] static auto ToString( + std::string instance_name, + std::string uuid, + ArtifactDigest const& digest) noexcept -> std::string; [[nodiscard]] static auto FromString( std::string const& request) noexcept -> std::optional<WriteRequest>; @@ -96,7 +94,7 @@ class ByteStreamUtils final { std::string hash_; std::size_t size_ = 0; - WriteRequest() = default; + explicit WriteRequest() = default; }; }; |