Move unittestenv to correct location
[kdepim.git] / kmail / kmmigrateapplication.cpp
blob6ce44bbed37321465cfc0769e941786a5c1a4799
1 /*
2 Copyright (c) 2015-2016 Montel Laurent <montel@kde.org>
4 This program is free software; you can redistribute it and/or modify it
5 under the terms of the GNU General Public License, version 2, as
6 published by the Free Software Foundation.
8 This program is distributed in the hope that it will be useful, but
9 WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 General Public License for more details.
13 You should have received a copy of the GNU General Public License along
14 with this program; if not, write to the Free Software Foundation, Inc.,
15 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 #include "kmmigrateapplication.h"
20 #include <Kdelibs4ConfigMigrator>
22 KMMigrateApplication::KMMigrateApplication()
24 initializeMigrator();
27 void KMMigrateApplication::migrate()
29 // Migrate to xdg.
30 Kdelibs4ConfigMigrator migrate(QStringLiteral("kmail"));
31 migrate.setConfigFiles(QStringList() << QStringLiteral("kmail2rc") << QStringLiteral("kmail2.notifyrc") << QStringLiteral("kmailsnippetrc")
32 << QStringLiteral("customtemplatesrc") << QStringLiteral("templatesconfigurationrc") << QStringLiteral("kpimcompletionorder")
33 << QStringLiteral("messageviewer.notifyrc") << QStringLiteral("sievetemplaterc") << QStringLiteral("foldermailarchiverc"));
34 migrate.setUiFiles(QStringList() << QStringLiteral("kmail_part.rc") << QStringLiteral("kmcomposerui.rc") << QStringLiteral("kmmainwin.rc")
35 << QStringLiteral("kmreadermainwin.rc"));
36 migrate.migrate();
38 // Migrate folders and files.
39 if (mMigrator.checkIfNecessary()) {
40 mMigrator.start();
44 void KMMigrateApplication::initializeMigrator()
46 const int currentVersion = 2;
47 mMigrator.setApplicationName(QStringLiteral("kmail2"));
48 mMigrator.setConfigFileName(QStringLiteral("kmail2rc"));
49 mMigrator.setCurrentConfigVersion(currentVersion);
51 // To migrate we need a version > currentVersion
52 const int initialVersion = currentVersion + 1;
53 // autosave
54 PimCommon::MigrateFileInfo migrateInfoAutoSave;
55 migrateInfoAutoSave.setFolder(true);
56 migrateInfoAutoSave.setType(QStringLiteral("data"));
57 migrateInfoAutoSave.setPath(QStringLiteral("kmail2/autosave/"));
58 migrateInfoAutoSave.setVersion(initialVersion);
59 mMigrator.insertMigrateInfo(migrateInfoAutoSave);
61 //MessageViewer
62 PimCommon::MigrateFileInfo migrateInfoMessageViewer;
63 migrateInfoMessageViewer.setFolder(true);
64 migrateInfoMessageViewer.setType(QStringLiteral("data"));
65 migrateInfoMessageViewer.setPath(QStringLiteral("messageviewer/theme/"));
66 migrateInfoMessageViewer.setVersion(initialVersion);
67 mMigrator.insertMigrateInfo(migrateInfoMessageViewer);
69 //autocorrect
70 PimCommon::MigrateFileInfo migrateInfoAutocorrect;
71 migrateInfoAutocorrect.setFolder(true);
72 migrateInfoAutocorrect.setType(QStringLiteral("data"));
73 migrateInfoAutocorrect.setPath(QStringLiteral("autocorrect/"));
74 migrateInfoAutocorrect.setVersion(initialVersion);
75 mMigrator.insertMigrateInfo(migrateInfoAutocorrect);
77 //gravatar
78 PimCommon::MigrateFileInfo migrateInfoGravatar;
79 migrateInfoGravatar.setFolder(true);
80 migrateInfoGravatar.setType(QStringLiteral("data"));
81 migrateInfoGravatar.setPath(QStringLiteral("gravatar/"));
82 migrateInfoGravatar.setVersion(initialVersion);
83 mMigrator.insertMigrateInfo(migrateInfoGravatar);
85 //adblock
86 PimCommon::MigrateFileInfo migrateInfoAdblockrules;
87 migrateInfoAdblockrules.setFolder(false);
88 migrateInfoAdblockrules.setType(QStringLiteral("data"));
89 migrateInfoAdblockrules.setPath(QStringLiteral("kmail2/"));
90 migrateInfoAdblockrules.setFilePatterns(QStringList() << QStringLiteral("adblockrules_*"));
91 migrateInfoAdblockrules.setVersion(initialVersion);
92 mMigrator.insertMigrateInfo(migrateInfoAdblockrules);
94 //vcard from identity
95 PimCommon::MigrateFileInfo migrateInfoVCardFromIdentity;
96 migrateInfoVCardFromIdentity.setFolder(false);
97 migrateInfoVCardFromIdentity.setType(QStringLiteral("data"));
98 migrateInfoVCardFromIdentity.setPath(QStringLiteral("kmail2/"));
99 migrateInfoVCardFromIdentity.setFilePatterns(QStringList() << QStringLiteral("*.vcf"));
100 migrateInfoVCardFromIdentity.setVersion(initialVersion);
101 mMigrator.insertMigrateInfo(migrateInfoVCardFromIdentity);