From cf4edc71b72c87a1e1a921892492e0989a62b138 Mon Sep 17 00:00:00 2001 From: Jorge Camarero Vera <jorge.camarero@cern.ch> Date: Tue, 22 Feb 2022 20:04:12 +0100 Subject: [PATCH] Creation of method toCamelCaseString() for cta-admin --- cmdline/CtaAdminTextFormatter.cpp | 5 ++--- common/dataStructures/MountType.cpp | 21 ++++++++++++++++++++- common/dataStructures/MountType.hpp | 5 +++++ 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/cmdline/CtaAdminTextFormatter.cpp b/cmdline/CtaAdminTextFormatter.cpp index c2075c0686..534c1636b8 100644 --- a/cmdline/CtaAdminTextFormatter.cpp +++ b/cmdline/CtaAdminTextFormatter.cpp @@ -305,14 +305,13 @@ void TextFormatter::print(const DriveLsItem &drls_item) //If there is a reason, we only want to display the beginning std::string reason = cta::utils::postEllipsis(drls_item.reason(),NB_CHAR_REASON); - const std::string mountType = toString(ProtobufToMountType(drls_item.mount_type())); push_back( drls_item.logical_library(), drls_item.drive_name(), drls_item.host(), (drls_item.desired_drive_state() == DriveLsItem::UP ? "Up" : "Down"), - mountType != "NO_MOUNT" ? mountType : "-", + toCamelCaseString(ProtobufToMountType(drls_item.mount_type())), toString(ProtobufToDriveStatus(drls_item.drive_status())), driveStatusSince, drls_item.vid(), @@ -753,7 +752,7 @@ void TextFormatter::print(const ShowQueuesItem &sq_item) { } push_back( - toString(ProtobufToMountType(sq_item.mount_type())), + toCamelCaseString(ProtobufToMountType(sq_item.mount_type())), sq_item.tapepool(), sq_item.vo(), sq_item.logical_library(), diff --git a/common/dataStructures/MountType.cpp b/common/dataStructures/MountType.cpp index d6bac0089a..fcc76479a2 100644 --- a/common/dataStructures/MountType.cpp +++ b/common/dataStructures/MountType.cpp @@ -41,6 +41,25 @@ std::string toString(cta::common::dataStructures::MountType type) { } } +std::string toCamelCaseString(cta::common::dataStructures::MountType type) { + switch(type) { + case MountType::ArchiveForUser: + return "ArchiveForUser"; + case MountType::ArchiveForRepack: + return "ArchiveForRepack"; + case MountType::ArchiveAllTypes: + return "ArchiveAllTypes"; + case MountType::Retrieve: + return "Retrieve"; + case MountType::Label: + return "Label"; + case MountType::NoMount: + return "-"; + default: + return "Unknown"; + } +} + MountType strToMountType(const std::string& mountTypeStr) { if(mountTypeStr == "ARCHIVE_FOR_USER") return MountType::ArchiveForUser; else if(mountTypeStr == "ARCHIVE_FOR_REPACK") return MountType::ArchiveForRepack; @@ -61,7 +80,7 @@ MountType getMountBasicType(MountType type) { } } -std::ostream & operator<<(std::ostream &os, +std::ostream & operator<<(std::ostream &os, const cta::common::dataStructures::MountType &obj) { return os << toString(obj); } diff --git a/common/dataStructures/MountType.hpp b/common/dataStructures/MountType.hpp index 6b641f6fda..b4c1b66373 100644 --- a/common/dataStructures/MountType.hpp +++ b/common/dataStructures/MountType.hpp @@ -43,6 +43,11 @@ MountType getMountBasicType(MountType type); */ std::string toString(MountType type); +/** + * Convert enum to string in camel case format to show in cta-admnin + */ +std::string toCamelCaseString(cta::common::dataStructures::MountType type); + /** * Convert string to enum. Needed to get values from DB. */ -- GitLab