From 8d47751cb25f3ff151de2643b20a3fdd95290139 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 24 Jan 2020 22:53:14 +0100 Subject: [PATCH] [libcalamares] Beautify debug output for InstanceKey --- src/libcalamares/CMakeLists.txt | 3 ++ src/libcalamares/modulesystem/InstanceKey.cpp | 46 +++++++++++++++++++ src/libcalamares/modulesystem/InstanceKey.h | 22 ++------- 3 files changed, 54 insertions(+), 17 deletions(-) create mode 100644 src/libcalamares/modulesystem/InstanceKey.cpp diff --git a/src/libcalamares/CMakeLists.txt b/src/libcalamares/CMakeLists.txt index ffc2e20b6..8b4233659 100644 --- a/src/libcalamares/CMakeLists.txt +++ b/src/libcalamares/CMakeLists.txt @@ -37,6 +37,9 @@ set( libSources locale/TimeZone.cpp locale/TranslatableConfiguration.cpp + # Modules + modulesystem/InstanceKey.cpp + # Network service network/Manager.cpp diff --git a/src/libcalamares/modulesystem/InstanceKey.cpp b/src/libcalamares/modulesystem/InstanceKey.cpp new file mode 100644 index 000000000..cde921b40 --- /dev/null +++ b/src/libcalamares/modulesystem/InstanceKey.cpp @@ -0,0 +1,46 @@ +/* === This file is part of Calamares - === + * + * Copyright 2014-2015, Teo Mrnjavac + * Copyright 2018-2019, Adriaan de Groot + * + * Calamares is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Calamares is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Calamares. If not, see . + */ +#include "InstanceKey.h" + +namespace Calamares +{ +namespace ModuleSystem +{ + +InstanceKey +InstanceKey::fromString( const QString& s ) +{ + QStringList moduleEntrySplit = s.split( '@' ); + if ( moduleEntrySplit.length() < 1 || moduleEntrySplit.length() > 2 ) + { + return InstanceKey(); + } + // For length 1, first == last + return InstanceKey( moduleEntrySplit.first(), moduleEntrySplit.last() ); +} + + +QDebug& +operator<<( QDebug& s, const Calamares::ModuleSystem::InstanceKey& i ) +{ + return s << i.toString(); +} + +} // namespace ModuleSystem +} // namespace Calamares diff --git a/src/libcalamares/modulesystem/InstanceKey.h b/src/libcalamares/modulesystem/InstanceKey.h index ad0fae0e7..495401903 100644 --- a/src/libcalamares/modulesystem/InstanceKey.h +++ b/src/libcalamares/modulesystem/InstanceKey.h @@ -19,15 +19,9 @@ #ifndef MODULESYSTEM_INSTANCEKEY_H #define MODULESYSTEM_INSTANCEKEY_H -#include +#include #include #include -#include - -namespace Logger -{ -class CLog; -} namespace Calamares { @@ -77,16 +71,7 @@ public: QString id() const { return second; } /// @brief Create instance key from stringified version - static InstanceKey fromString( const QString& s ) - { - QStringList moduleEntrySplit = s.split( '@' ); - if ( moduleEntrySplit.length() < 1 || moduleEntrySplit.length() > 2 ) - { - return InstanceKey(); - } - // For length 1, first == last - return InstanceKey( moduleEntrySplit.first(), moduleEntrySplit.last() ); - } + static InstanceKey fromString( const QString& s ); QString toString() const { @@ -109,6 +94,9 @@ private: } }; +QDebug& +operator <<( QDebug& s, const Calamares::ModuleSystem::InstanceKey& i ); + } // namespace ModuleSystem } // namespace Calamares