aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/utils/settingsaccessor.cpp
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2023-04-18 14:14:39 +0200
committerhjk <hjk@qt.io>2023-04-26 06:24:19 +0000
commitaeac83af7813f6ca5c67281c6cd91fc77351830e (patch)
tree1e1c2a0c05c3be22716360fd0a7157d028058cf4 /src/libs/utils/settingsaccessor.cpp
parentb4a6af026e5bce2340a900a92250e61d9205e511 (diff)
Utils: Collapse the two SettingsAccessor constructor hierarchies
Change-Id: I7b659c9e3c66700cfc92f9cfbd9df0535a1ca655 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/libs/utils/settingsaccessor.cpp')
-rw-r--r--src/libs/utils/settingsaccessor.cpp31
1 files changed, 12 insertions, 19 deletions
diff --git a/src/libs/utils/settingsaccessor.cpp b/src/libs/utils/settingsaccessor.cpp
index 24f922bf98..0562f5cf98 100644
--- a/src/libs/utils/settingsaccessor.cpp
+++ b/src/libs/utils/settingsaccessor.cpp
@@ -223,14 +223,8 @@ std::optional<FilePath> BackUpStrategy::backupName(const QVariantMap &oldData,
BackingUpSettingsAccessor::BackingUpSettingsAccessor(const QString &docType,
const QString &applicationDisplayName) :
- BackingUpSettingsAccessor(std::make_unique<BackUpStrategy>(), docType, applicationDisplayName)
-{ }
-
-BackingUpSettingsAccessor::BackingUpSettingsAccessor(std::unique_ptr<BackUpStrategy> &&strategy,
- const QString &docType,
- const QString &applicationDisplayName) :
SettingsAccessor(docType, applicationDisplayName),
- m_strategy(std::move(strategy))
+ m_strategy(std::make_unique<BackUpStrategy>())
{ }
SettingsAccessor::RestoreData
@@ -272,6 +266,11 @@ std::optional<SettingsAccessor::Issue> BackingUpSettingsAccessor::writeData(cons
return SettingsAccessor::writeData(path, data, parent);
}
+void BackingUpSettingsAccessor::setStrategy(std::unique_ptr<BackUpStrategy> &&strategy)
+{
+ m_strategy = std::move(strategy);
+}
+
FilePaths BackingUpSettingsAccessor::readFileCandidates(const FilePath &path) const
{
FilePaths result = filteredUnique(m_strategy->readFileCandidates(path));
@@ -405,15 +404,10 @@ QVariantMap VersionUpgrader::renameKeys(const QList<Change> &changes, QVariantMa
*/
UpgradingSettingsAccessor::UpgradingSettingsAccessor(const QString &docType,
const QString &applicationDisplayName) :
- UpgradingSettingsAccessor(std::make_unique<VersionedBackUpStrategy>(this), docType,
- applicationDisplayName)
-{ }
-
-UpgradingSettingsAccessor::UpgradingSettingsAccessor(std::unique_ptr<BackUpStrategy> &&strategy,
- const QString &docType,
- const QString &applicationDisplayName) :
- BackingUpSettingsAccessor(std::move(strategy), docType, applicationDisplayName)
-{ }
+ BackingUpSettingsAccessor(docType, applicationDisplayName)
+{
+ setStrategy(std::make_unique<VersionedBackUpStrategy>(this));
+}
int UpgradingSettingsAccessor::currentVersion() const
{
@@ -568,10 +562,9 @@ UpgradingSettingsAccessor::validateVersionRange(const RestoreData &data) const
* MergingSettingsAccessor allows to merge secondary settings into the main settings.
* This is useful to e.g. handle .shared files together with .user files.
*/
-MergingSettingsAccessor::MergingSettingsAccessor(std::unique_ptr<BackUpStrategy> &&strategy,
- const QString &docType,
+MergingSettingsAccessor::MergingSettingsAccessor(const QString &docType,
const QString &applicationDisplayName) :
- UpgradingSettingsAccessor(std::move(strategy), docType, applicationDisplayName)
+ UpgradingSettingsAccessor(docType, applicationDisplayName)
{ }
SettingsAccessor::RestoreData MergingSettingsAccessor::readData(const FilePath &path,