qBittorrent
upgrade.cpp File Reference
#include "upgrade.h"
#include <QMetaEnum>
#include "base/bittorrent/torrentcontentlayout.h"
#include "base/logger.h"
#include "base/preferences.h"
#include "base/profile.h"
#include "base/settingsstorage.h"
#include "base/settingvalue.h"
#include "base/utils/fs.h"
#include "base/utils/io.h"
#include "base/utils/string.h"
Include dependency graph for upgrade.cpp:

Go to the source code of this file.

Namespaces

 anonymous_namespace{upgrade.cpp}
 

Functions

void anonymous_namespace{upgrade.cpp}::exportWebUIHttpsFiles ()
 
void anonymous_namespace{upgrade.cpp}::upgradeTorrentContentLayout ()
 
void anonymous_namespace{upgrade.cpp}::upgradeListenPortSettings ()
 
void anonymous_namespace{upgrade.cpp}::upgradeSchedulerDaysSettings ()
 
void anonymous_namespace{upgrade.cpp}::upgradeDNSServiceSettings ()
 
void anonymous_namespace{upgrade.cpp}::upgradeTrayIconStyleSettings ()
 
void anonymous_namespace{upgrade.cpp}::migrateSettingKeys ()
 
bool upgrade (const bool)
 
void setCurrentMigrationVersion ()
 
void handleChangedDefaults (const DefaultPreferencesMode mode)
 

Variables

const int anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION = 2
 
const char anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION_KEY [] = "Meta/MigrationVersion"
 

Function Documentation

◆ handleChangedDefaults()

void handleChangedDefaults ( const DefaultPreferencesMode  mode)

Definition at line 360 of file upgrade.cpp.

361 {
362  struct DefaultValue
363  {
364  QString name;
365  QVariant legacy;
366  QVariant current;
367  };
368 
369  const DefaultValue changedDefaults[] =
370  {
371  {QLatin1String {"BitTorrent/Session/QueueingSystemEnabled"}, true, false}
372  };
373 
374  auto *settingsStorage = SettingsStorage::instance();
375  for (const DefaultValue &value : changedDefaults)
376  {
377  if (!settingsStorage->hasKey(value.name))
378  {
379  settingsStorage->storeValue(value.name
380  , (mode == DefaultPreferencesMode::Legacy ? value.legacy : value.current));
381  }
382  }
383 }
static SettingsStorage * instance()
T value(const QString &key, const T &defaultValue={})
Definition: preferences.cpp:64

References SettingsStorage::instance(), Legacy, and anonymous_namespace{preferences.cpp}::value().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setCurrentMigrationVersion()

void setCurrentMigrationVersion ( )

Definition at line 355 of file upgrade.cpp.

356 {
358 }
void storeValue(const QString &key, const T &value)
const char MIGRATION_VERSION_KEY[]
Definition: upgrade.cpp:46

References SettingsStorage::instance(), anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION, anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION_KEY, and SettingsStorage::storeValue().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ upgrade()

bool upgrade ( const bool  ask)

Definition at line 331 of file upgrade.cpp.

332 {
334 
335  if (version != MIGRATION_VERSION)
336  {
337  if (version < 1)
338  {
345  }
346  if (version < 2)
348 
349  version = MIGRATION_VERSION;
350  }
351 
352  return true;
353 }

References anonymous_namespace{upgrade.cpp}::exportWebUIHttpsFiles(), anonymous_namespace{upgrade.cpp}::migrateSettingKeys(), anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION, anonymous_namespace{upgrade.cpp}::MIGRATION_VERSION_KEY, anonymous_namespace{upgrade.cpp}::upgradeDNSServiceSettings(), anonymous_namespace{upgrade.cpp}::upgradeListenPortSettings(), anonymous_namespace{upgrade.cpp}::upgradeSchedulerDaysSettings(), anonymous_namespace{upgrade.cpp}::upgradeTorrentContentLayout(), and anonymous_namespace{upgrade.cpp}::upgradeTrayIconStyleSettings().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function: