summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2025-01-29 17:04:05 +0100
committerMaksim Denisov <denisov.maksim@huawei.com>2025-02-07 14:58:04 +0100
commit5eb04ac36577b8eab29c24b311852aa05b2fcdff (patch)
treefbf6c567d12e51f56e1ed2774d8167712f0b89fd /src
parent2ce9018150d71931853f1bec4f516432ff558186 (diff)
downloadjustbuild-5eb04ac36577b8eab29c24b311852aa05b2fcdff.tar.gz
Move implementation of ContentBlob to artifact_blob
...and remove ContentBlob.
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/execution_api/bazel_msg/TARGETS1
-rw-r--r--src/buildtool/execution_api/bazel_msg/bazel_msg_factory.cpp1
-rw-r--r--src/buildtool/execution_api/common/TARGETS16
-rw-r--r--src/buildtool/execution_api/common/artifact_blob.hpp45
-rw-r--r--src/buildtool/execution_api/common/common_api.cpp1
-rw-r--r--src/buildtool/execution_api/common/content_blob_container.hpp63
-rw-r--r--src/buildtool/execution_api/remote/TARGETS2
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_api.cpp1
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp1
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_network.cpp1
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_network_reader.cpp1
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_response.cpp1
12 files changed, 49 insertions, 85 deletions
diff --git a/src/buildtool/execution_api/bazel_msg/TARGETS b/src/buildtool/execution_api/bazel_msg/TARGETS
index 0e857331..ed09c03b 100644
--- a/src/buildtool/execution_api/bazel_msg/TARGETS
+++ b/src/buildtool/execution_api/bazel_msg/TARGETS
@@ -27,7 +27,6 @@
[ ["@", "fmt", "", "fmt"]
, ["@", "protoc", "", "libprotobuf"]
, ["src/buildtool/common", "artifact_digest_factory"]
- , ["src/buildtool/execution_api/common", "content_blob_container"]
, ["src/buildtool/file_system", "file_system_manager"]
, ["src/buildtool/file_system", "git_repo"]
, ["src/utils/cpp", "hex_string"]
diff --git a/src/buildtool/execution_api/bazel_msg/bazel_msg_factory.cpp b/src/buildtool/execution_api/bazel_msg/bazel_msg_factory.cpp
index 30a1a31a..d35b041f 100644
--- a/src/buildtool/execution_api/bazel_msg/bazel_msg_factory.cpp
+++ b/src/buildtool/execution_api/bazel_msg/bazel_msg_factory.cpp
@@ -30,7 +30,6 @@
#include "google/protobuf/duration.pb.h"
#include "google/protobuf/repeated_ptr_field.h"
#include "src/buildtool/common/artifact_digest_factory.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/file_system/file_system_manager.hpp"
#include "src/buildtool/file_system/git_repo.hpp"
#include "src/utils/cpp/hex_string.hpp"
diff --git a/src/buildtool/execution_api/common/TARGETS b/src/buildtool/execution_api/common/TARGETS
index c6fa78b9..b642c0ff 100644
--- a/src/buildtool/execution_api/common/TARGETS
+++ b/src/buildtool/execution_api/common/TARGETS
@@ -101,8 +101,7 @@
]
, "stage": ["src", "buildtool", "execution_api", "common"]
, "private-deps":
- [ "content_blob_container"
- , "message_limits"
+ [ "message_limits"
, ["@", "fmt", "", "fmt"]
, ["src/buildtool/file_system", "object_type"]
, ["src/buildtool/logging", "log_level"]
@@ -129,18 +128,15 @@
]
, "stage": ["src", "buildtool", "execution_api", "common"]
}
-, "content_blob_container":
- { "type": ["@", "rules", "CC", "library"]
- , "name": ["content_blob_container"]
- , "hdrs": ["content_blob_container.hpp"]
- , "deps": [["@", "gsl", "", "gsl"], ["src/utils/cpp", "hash_combine"]]
- , "stage": ["src", "buildtool", "execution_api", "common"]
- }
, "artifact_blob":
{ "type": ["@", "rules", "CC", "library"]
, "name": ["artifact_blob"]
, "hdrs": ["artifact_blob.hpp"]
- , "deps": ["content_blob_container", ["src/buildtool/common", "common"]]
+ , "deps":
+ [ ["@", "gsl", "", "gsl"]
+ , ["src/buildtool/common", "common"]
+ , ["src/utils/cpp", "hash_combine"]
+ ]
, "stage": ["src", "buildtool", "execution_api", "common"]
}
}
diff --git a/src/buildtool/execution_api/common/artifact_blob.hpp b/src/buildtool/execution_api/common/artifact_blob.hpp
index 5e113123..b1e8980a 100644
--- a/src/buildtool/execution_api/common/artifact_blob.hpp
+++ b/src/buildtool/execution_api/common/artifact_blob.hpp
@@ -15,9 +15,50 @@
#ifndef INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_ARTIFACT_BLOB_HPP
#define INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_ARTIFACT_BLOB_HPP
+#include <cstddef>
+#include <functional>
+#include <memory>
+#include <string>
+#include <utility> //std::move
+
+#include "gsl/gsl"
#include "src/buildtool/common/artifact_digest.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
+#include "src/utils/cpp/hash_combine.hpp"
+
+struct ArtifactBlob final {
+ ArtifactBlob(ArtifactDigest digest,
+ std::string mydata,
+ bool is_exec) noexcept
+ : digest{std::move(digest)},
+ data{std::make_shared<std::string>(std::move(mydata))},
+ is_exec{is_exec} {}
+
+ ArtifactBlob(ArtifactDigest digest,
+ gsl::not_null<std::shared_ptr<std::string>> const& mydata,
+ bool is_exec) noexcept
+ : digest{std::move(digest)}, data(mydata), is_exec{is_exec} {}
+
+ [[nodiscard]] auto operator==(ArtifactBlob const& other) const noexcept
+ -> bool {
+ return digest == other.digest and is_exec == other.is_exec;
+ }
+
+ ArtifactDigest digest;
+ std::shared_ptr<std::string> data;
+ bool is_exec = false;
+};
-using ArtifactBlob = ContentBlob<ArtifactDigest>;
+namespace std {
+template <>
+struct hash<ArtifactBlob> {
+ [[nodiscard]] auto operator()(ArtifactBlob const& blob) const noexcept
+ -> std::size_t {
+ std::size_t seed{};
+ hash_combine(&seed, blob.digest);
+ hash_combine(&seed, blob.is_exec);
+ return seed;
+ }
+};
+} // namespace std
#endif // INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_ARTIFACT_BLOB_HPP
diff --git a/src/buildtool/execution_api/common/common_api.cpp b/src/buildtool/execution_api/common/common_api.cpp
index 3a713fc4..69cd86fb 100644
--- a/src/buildtool/execution_api/common/common_api.cpp
+++ b/src/buildtool/execution_api/common/common_api.cpp
@@ -28,7 +28,6 @@
#include <utility>
#include "fmt/core.h"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/common/message_limits.hpp"
#include "src/buildtool/file_system/object_type.hpp"
#include "src/buildtool/logging/log_level.hpp"
diff --git a/src/buildtool/execution_api/common/content_blob_container.hpp b/src/buildtool/execution_api/common/content_blob_container.hpp
deleted file mode 100644
index d92c4961..00000000
--- a/src/buildtool/execution_api/common/content_blob_container.hpp
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright 2024 Huawei Cloud Computing Technology Co., Ltd.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-#ifndef INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_CONTENT_BLOB_CONTAINER_HPP
-#define INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_CONTENT_BLOB_CONTAINER_HPP
-
-#include <cstddef>
-#include <functional>
-#include <memory>
-#include <string>
-#include <utility> //std::move
-
-#include "gsl/gsl"
-#include "src/utils/cpp/hash_combine.hpp"
-
-template <typename TDigest>
-struct ContentBlob final {
- ContentBlob(TDigest mydigest, std::string mydata, bool is_exec) noexcept
- : digest{std::move(mydigest)},
- data{std::make_shared<std::string>(std::move(mydata))},
- is_exec{is_exec} {}
-
- ContentBlob(TDigest mydigest,
- gsl::not_null<std::shared_ptr<std::string>> const& mydata,
- bool is_exec) noexcept
- : digest{std::move(mydigest)}, data(mydata), is_exec{is_exec} {}
-
- [[nodiscard]] auto operator==(ContentBlob const& other) const noexcept
- -> bool {
- return std::equal_to<TDigest>{}(digest, other.digest) and
- is_exec == other.is_exec;
- }
-
- TDigest digest;
- std::shared_ptr<std::string> data;
- bool is_exec = false;
-};
-
-namespace std {
-template <typename TDigest>
-struct hash<ContentBlob<TDigest>> {
- [[nodiscard]] auto operator()(
- ContentBlob<TDigest> const& blob) const noexcept -> std::size_t {
- std::size_t seed{};
- hash_combine(&seed, blob.digest);
- hash_combine(&seed, blob.is_exec);
- return seed;
- }
-};
-} // namespace std
-
-#endif // INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_CONTENT_BLOB_CONTAINER_HPP
diff --git a/src/buildtool/execution_api/remote/TARGETS b/src/buildtool/execution_api/remote/TARGETS
index d68e128b..f5923306 100644
--- a/src/buildtool/execution_api/remote/TARGETS
+++ b/src/buildtool/execution_api/remote/TARGETS
@@ -55,7 +55,6 @@
, ["src/buildtool/common/remote", "retry"]
, ["src/buildtool/execution_api/bazel_msg", "bazel_msg_factory"]
, ["src/buildtool/execution_api/common", "common_api"]
- , ["src/buildtool/execution_api/common", "content_blob_container"]
, ["src/buildtool/execution_api/common", "message_limits"]
, ["src/buildtool/execution_api/utils", "outputscheck"]
, ["src/buildtool/file_system", "object_type"]
@@ -89,7 +88,6 @@
, ["src/buildtool/execution_api/bazel_msg", "directory_tree"]
, ["src/buildtool/execution_api/common", "artifact_blob"]
, ["src/buildtool/execution_api/common", "common_api"]
- , ["src/buildtool/execution_api/common", "content_blob_container"]
, ["src/buildtool/file_system", "file_system_manager"]
, ["src/buildtool/file_system", "object_type"]
, ["src/buildtool/logging", "log_level"]
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_api.cpp b/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
index 449c9c3b..02db5a56 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_api.cpp
@@ -35,7 +35,6 @@
#include "src/buildtool/execution_api/bazel_msg/directory_tree.hpp"
#include "src/buildtool/execution_api/common/artifact_blob.hpp"
#include "src/buildtool/execution_api/common/common_api.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/common/stream_dumper.hpp"
#include "src/buildtool/execution_api/common/tree_reader.hpp"
#include "src/buildtool/execution_api/remote/bazel/bazel_action.hpp"
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
index 2a9fc182..0024ea97 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.cpp
@@ -34,7 +34,6 @@
#include "src/buildtool/common/remote/retry.hpp"
#include "src/buildtool/common/remote/retry_config.hpp"
#include "src/buildtool/execution_api/common/bytestream_utils.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/common/execution_common.hpp"
#include "src/buildtool/execution_api/common/message_limits.hpp"
#include "src/buildtool/file_system/object_type.hpp"
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_network.cpp b/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
index 0be8b539..7b15b667 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_network.cpp
@@ -17,7 +17,6 @@
#include <functional>
#include <utility>
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/common/message_limits.hpp"
#include "src/buildtool/logging/log_level.hpp"
#include "src/buildtool/logging/logger.hpp"
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_network_reader.cpp b/src/buildtool/execution_api/remote/bazel/bazel_network_reader.cpp
index 4b6989ec..ad61c944 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_network_reader.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_network_reader.cpp
@@ -23,7 +23,6 @@
#include "src/buildtool/common/artifact_digest_factory.hpp"
#include "src/buildtool/common/protocol_traits.hpp"
#include "src/buildtool/execution_api/bazel_msg/bazel_msg_factory.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/common/message_limits.hpp"
#include "src/buildtool/file_system/object_type.hpp"
#include "src/buildtool/logging/log_level.hpp"
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_response.cpp b/src/buildtool/execution_api/remote/bazel/bazel_response.cpp
index 0e994d1b..ad5ad764 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_response.cpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_response.cpp
@@ -31,7 +31,6 @@
#include "src/buildtool/execution_api/bazel_msg/bazel_msg_factory.hpp"
#include "src/buildtool/execution_api/common/artifact_blob.hpp"
#include "src/buildtool/execution_api/common/common_api.hpp"
-#include "src/buildtool/execution_api/common/content_blob_container.hpp"
#include "src/buildtool/execution_api/remote/bazel/bazel_network_reader.hpp"
#include "src/buildtool/file_system/object_type.hpp"
#include "src/buildtool/logging/log_level.hpp"