diff options
author | kh1 <qt-info@nokia.com> | 2011-06-20 22:00:34 +0200 |
---|---|---|
committer | kh1 <qt-info@nokia.com> | 2011-06-20 22:00:34 +0200 |
commit | 2716f627b25d7e17485089958f9e733cc8a80cb0 (patch) | |
tree | bcda0eaa5186fff3e4ac533f9f247920c2b2b72e /installerbuilder/common | |
parent | b07a58147eed39e7c4a4aca94273d48cdeb3364e (diff) |
Rename files to match class name. Adjust includes.
Diffstat (limited to 'installerbuilder/common')
-rw-r--r-- | installerbuilder/common/installersettings.cpp | 367 | ||||
-rw-r--r-- | installerbuilder/common/installersettings.h | 95 | ||||
-rw-r--r-- | installerbuilder/common/repositorygen.cpp | 2 |
3 files changed, 1 insertions, 463 deletions
diff --git a/installerbuilder/common/installersettings.cpp b/installerbuilder/common/installersettings.cpp deleted file mode 100644 index 5205a6ab2..000000000 --- a/installerbuilder/common/installersettings.cpp +++ /dev/null @@ -1,367 +0,0 @@ -/************************************************************************** -** -** This file is part of Qt SDK** -** -** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).* -** -** Contact: Nokia Corporation qt-info@nokia.com** -** -** No Commercial Usage -** -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this file. -** Please review the following information to ensure the GNU Lesser General -** Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception version -** 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you are unsure which license is appropriate for your use, please contact -** (qt-info@nokia.com). -** -**************************************************************************/ -#include "installersettings.h" - -#include "common/errors.h" -#include "common/repository.h" -#include "qinstallerglobal.h" - -#include <QtCore/QFileInfo> -#include <QtCore/QStringList> - -#include <QtXml/QDomDocument> - -using namespace QInstaller; - - -// -- Settings::Private - -class Settings::Private : public QSharedData -{ -public: - QString prefix; - QString logo; - QString logoSmall; - QString title; - QString maintenanceTitle; - QString name; - QString version; - QString publisher; - QString url; - QString watermark; - QString background; - QString runProgram; - QString runProgramDescription; - QString startMenuDir; - QString targetDir; - QString adminTargetDir; - QString icon; - QString removeTargetDir; - QString uninstallerName; - QString uninstallerIniFile; - QString configurationFileName; - QSet<Repository> m_repositories; - QSet<Repository> m_userRepositories; - QStringList certificateFiles; - QByteArray privateKey; - QByteArray publicKey; - - QString makeAbsolutePath(const QString &p) const - { - if (QFileInfo(p).isAbsolute()) - return p; - return prefix + QLatin1String("/") + p; - } -}; - - -static QString readChild(const QDomElement &el, const QString &child, const QString &defValue = QString()) -{ - const QDomNodeList list = el.elementsByTagName(child); - if (list.size() > 1) - throw Error(QObject::tr("Multiple %1 elements found, but only one allowed.").arg(child)); - return list.isEmpty() ? defValue : list.at(0).toElement().text(); -} - -#if 0 -static QStringList readChildList(const QDomElement &el, const QString &child) -{ - const QDomNodeList list = el.elementsByTagName(child); - QStringList res; - for (int i = 0; i < list.size(); ++i) - res += list.at(i).toElement().text(); - return res; -} -#endif - -static QString splitTrimmed(const QString &string) -{ - if (string.isEmpty()) - return QString(); - - const QStringList input = string.split(QRegExp(QLatin1String("\n|\r\n"))); - - QStringList result; - foreach (const QString &line, input) - result.append(line.trimmed()); - result.append(QString()); - - return result.join(QLatin1String("\n")); -} - - -// -- InstallerSettings - -Settings::Settings() - : d(new Private) -{ -} - -Settings::~Settings() -{ -} - -Settings::Settings(const Settings &other) - : d(other.d) -{ -} - -Settings& Settings::operator=(const Settings &other) -{ - Settings copy(other); - std::swap(d, copy.d); - return *this; -} - -/*! - @throws QInstallerError -*/ -Settings Settings::fromFileAndPrefix(const QString &path, const QString &prefix) -{ - QDomDocument doc; - QFile file(path); - QFile overrideConfig(QLatin1String(":/overrideconfig.xml")); - - if (overrideConfig.exists()) - file.setFileName(overrideConfig.fileName()); - - if (!file.open(QIODevice::ReadOnly)) - throw Error(tr("Could not open settings file %1 for reading: %2").arg(path, file.errorString())); - - QString msg; - int line = 0; - int col = 0; - if (!doc.setContent(&file, &msg, &line, &col)) { - throw Error(tr("Could not parse settings file %1: %2:%3: %4").arg(path, QString::number(line), - QString::number(col), msg)); - } - - const QDomElement root = doc.documentElement(); - if (root.tagName() != QLatin1String("Installer")) - throw Error(tr("%1 is not valid: Installer root node expected")); - - Settings s; - s.d->prefix = prefix; - s.d->logo = readChild(root, QLatin1String("Logo")); - s.d->logoSmall = readChild(root, QLatin1String("LogoSmall")); - s.d->title = readChild(root, QLatin1String("Title")); - s.d->maintenanceTitle = readChild(root, QLatin1String("MaintenanceTitle")); - s.d->name = readChild(root, scName); - s.d->version = readChild(root, scVersion); - s.d->publisher = readChild(root, QLatin1String("Publisher")); - s.d->url = readChild(root, QLatin1String("ProductUrl")); - s.d->watermark = readChild(root, QLatin1String("Watermark")); - s.d->background = readChild(root, QLatin1String("Background")); - s.d->runProgram = readChild(root, QLatin1String("RunProgram")); - s.d->runProgramDescription = readChild(root, QLatin1String("RunProgramDescription")); - s.d->startMenuDir = readChild(root, QLatin1String("StartMenuDir")); - s.d->targetDir = readChild(root, scTargetDir); - s.d->adminTargetDir = readChild(root, QLatin1String("AdminTargetDir")); - s.d->icon = readChild(root, QLatin1String("Icon")); - s.d->removeTargetDir = readChild(root, QLatin1String("RemoveTargetDir"), scTrue); - s.d->uninstallerName = readChild(root, QLatin1String("UninstallerName"), QLatin1String("uninstall")); - s.d->uninstallerIniFile = readChild(root, QLatin1String("UninstallerIniFile"), s.d->uninstallerName - + QLatin1String(".ini")); - s.d->privateKey = splitTrimmed(readChild(root, QLatin1String("PrivateKey"))).toLatin1(); - s.d->publicKey = splitTrimmed(readChild(root, QLatin1String("PublicKey"))).toLatin1(); - s.d->configurationFileName = readChild(root, QLatin1String("TargetConfigurationFile"), - QLatin1String("components.xml")); - - const QDomNodeList reposTags = root.elementsByTagName(QLatin1String("RemoteRepositories")); - for (int a = 0; a < reposTags.count(); ++a) { - const QDomNodeList repos = reposTags.at(a).toElement().elementsByTagName(QLatin1String("Repository")); - for (int i = 0; i < repos.size(); ++i) { - Repository r; - const QDomNodeList children = repos.at(i).childNodes(); - for (int j = 0; j < children.size(); ++j) { - if (children.at(j).toElement().tagName() == QLatin1String("Url")) - r.setUrl(children.at(j).toElement().text()); - } - s.d->m_repositories.insert(r); - } - } - - const QDomNodeList certs = root.elementsByTagName(QLatin1String("SigningCertificate")); - for (int i=0; i < certs.size(); ++i) { - const QString str = certs.at(i).toElement().text(); - if (str.isEmpty()) - continue; - s.d->certificateFiles.push_back(s.d->makeAbsolutePath(str)); - } - return s; -} - -QString Settings::maintenanceTitle() const -{ - return d->maintenanceTitle; -} - -QString Settings::logo() const -{ - return d->makeAbsolutePath(d->logo); -} - -QString Settings::logoSmall() const -{ - return d->makeAbsolutePath(d->logoSmall); -} - -QString Settings::title() const -{ - return d->title; -} - -QString Settings::applicationName() const -{ - return d->name; -} - -QString Settings::applicationVersion() const -{ - return d->version; -} - -QString Settings::publisher() const -{ - return d->publisher; -} - -QString Settings::url() const -{ - return d->url; -} - -QString Settings::watermark() const -{ - return d->makeAbsolutePath(d->watermark); -} - -QString Settings::background() const -{ - return d->makeAbsolutePath(d->background); -} - -QString Settings::icon() const -{ -#if defined(Q_WS_MAC) - return d->makeAbsolutePath(d->icon) + QLatin1String(".icns"); -#elif defined(Q_WS_WIN) - return d->makeAbsolutePath(d->icon) + QLatin1String(".ico"); -#endif - return d->makeAbsolutePath(d->icon) + QLatin1String(".png"); -} - -QString Settings::removeTargetDir() const -{ - return d->removeTargetDir; -} - -QString Settings::uninstallerName() const -{ - if (d->uninstallerName.isEmpty()) - return QLatin1String("uninstall"); - return d->uninstallerName; -} - -QString Settings::uninstallerIniFile() const -{ - return d->uninstallerIniFile; -} - -QString Settings::runProgram() const -{ - return d->runProgram; -} - -QString Settings::runProgramDescription() const -{ - return d->runProgramDescription; -} - -QString Settings::startMenuDir() const -{ - return d->startMenuDir; -} - -QString Settings::targetDir() const -{ - return d->targetDir; -} - -QString Settings::adminTargetDir() const -{ - return d->adminTargetDir; -} - -QString Settings::configurationFileName() const -{ - return d->configurationFileName; -} - -QStringList Settings::certificateFiles() const -{ - return d->certificateFiles; -} - -QByteArray Settings::privateKey() const -{ - return d->privateKey; -} - -QByteArray Settings::publicKey() const -{ - return d->publicKey; -} - -QList<Repository> Settings::repositories() const -{ - return (d->m_repositories + d->m_userRepositories).toList(); -} - -void Settings::setTemporaryRepositories(const QList<Repository> &repos, bool replace) -{ - if (replace) - d->m_repositories = repos.toSet(); - else - d->m_repositories.unite(repos.toSet()); -} - -QList<Repository> Settings::userRepositories() const -{ - return d->m_userRepositories.toList(); -} - -void Settings::addUserRepositories(const QList<Repository> &repositories) -{ - d->m_userRepositories.unite(repositories.toSet()); -} diff --git a/installerbuilder/common/installersettings.h b/installerbuilder/common/installersettings.h deleted file mode 100644 index fb1b29971..000000000 --- a/installerbuilder/common/installersettings.h +++ /dev/null @@ -1,95 +0,0 @@ -/************************************************************************** -** -** This file is part of Qt SDK** -** -** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).* -** -** Contact: Nokia Corporation qt-info@nokia.com** -** -** GNU Lesser General Public License Usage -** -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this file. -** Please review the following information to ensure the GNU Lesser General -** Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception version -** 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you are unsure which license is appropriate for your use, please contact -** (qt-info@nokia.com). -** -**************************************************************************/ -#ifndef SETTINGS_H -#define SETTINGS_H - -#include "installer_global.h" - -#include <QtCore/QCoreApplication> -#include <QtCore/QSharedDataPointer> - -namespace QInstaller { -class Repository; - -class INSTALLER_EXPORT Settings -{ - Q_DECLARE_TR_FUNCTIONS(Settings) - -public: - explicit Settings(); - ~Settings(); - - Settings(const Settings &other); - Settings &operator=(const Settings &other); - - static Settings fromFileAndPrefix(const QString &path, const QString &prefix); - - bool isValid() const; - - QString logo() const; - QString logoSmall() const; - QString title() const; - QString maintenanceTitle() const; - QString publisher() const; - QString url() const; - QString watermark() const; - QString background() const; - QString icon() const; - - QString applicationName() const; - QString applicationVersion() const; - - QString runProgram() const; - QString runProgramDescription() const; - QString startMenuDir() const; - QString targetDir() const; - QString adminTargetDir() const; - - QString removeTargetDir() const; - QString uninstallerName() const; - QString uninstallerIniFile() const; - - QByteArray privateKey() const; - QByteArray publicKey() const; - - QString configurationFileName() const; - - QList<Repository> repositories() const; - void setTemporaryRepositories(const QList<Repository> &repos, bool replace); - - QList<Repository> userRepositories() const; - void addUserRepositories(const QList<Repository> &repositories); - - QStringList certificateFiles() const; - -private: - class Private; - QSharedDataPointer<Private> d; -}; - -} - -#endif // SETTINGS_H diff --git a/installerbuilder/common/repositorygen.cpp b/installerbuilder/common/repositorygen.cpp index 4dd0e15b6..35e61cbe4 100644 --- a/installerbuilder/common/repositorygen.cpp +++ b/installerbuilder/common/repositorygen.cpp @@ -36,7 +36,7 @@ #include <common/errors.h> #include <common/utils.h> #include <common/consolepasswordprovider.h> -#include <common/installersettings.h> +#include <settings.h> #include <KDUpdater/KDUpdater> |