diff --git a/src/v/cloud_storage/topic_manifest_downloader.cc b/src/v/cloud_storage/topic_manifest_downloader.cc index 9c1ba025fb113..ce8f32e6fc413 100644 --- a/src/v/cloud_storage/topic_manifest_downloader.cc +++ b/src/v/cloud_storage/topic_manifest_downloader.cc @@ -31,6 +31,22 @@ bool bin_manifest_filter( return i.key.ends_with("topic_manifest.bin"); }; } // namespace + +std::ostream& operator<<(std::ostream& os, find_topic_manifest_outcome o) { + switch (o) { + case find_topic_manifest_outcome::success: + os << "find_topic_manifest_outcome::success"; + break; + case find_topic_manifest_outcome::no_matching_manifest: + os << "find_topic_manifest_outcome::no_matching_manifest"; + break; + case find_topic_manifest_outcome::multiple_matching_manifests: + os << "find_topic_manifest_outcome::multiple_matching_manifests"; + break; + } + return os; +} + topic_manifest_downloader::topic_manifest_downloader( const cloud_storage_clients::bucket_name bucket, std::optional hint, diff --git a/src/v/cloud_storage/topic_manifest_downloader.h b/src/v/cloud_storage/topic_manifest_downloader.h index d626ed7a24374..786967cd29534 100644 --- a/src/v/cloud_storage/topic_manifest_downloader.h +++ b/src/v/cloud_storage/topic_manifest_downloader.h @@ -27,6 +27,7 @@ enum class find_topic_manifest_outcome { // and a hint must be provided to determine winner. multiple_matching_manifests, }; +std::ostream& operator<<(std::ostream&, find_topic_manifest_outcome); // Encapsulates downloading manifests for a given topic. //