summaryrefslogtreecommitdiffstats
path: root/installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h
diff options
context:
space:
mode:
Diffstat (limited to 'installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h')
-rw-r--r--installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h93
1 files changed, 93 insertions, 0 deletions
diff --git a/installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h b/installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h
new file mode 100644
index 000000000..3970236d3
--- /dev/null
+++ b/installerbuilder/libinstaller/kdtools/KDUpdater/kdupdaterapplication.h
@@ -0,0 +1,93 @@
+/****************************************************************************
+** Copyright (C) 2001-2010 Klaralvdalens Datakonsult AB. All rights reserved.
+**
+** This file is part of the KD Tools library.
+**
+** Licensees holding valid commercial KD Tools licenses may use this file in
+** accordance with the KD Tools Commercial License Agreement provided with
+** the Software.
+**
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU Lesser General Public License version 2 and version 3 as published by the
+** Free Software Foundation and appearing in the file LICENSE.LGPL included.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+** Contact info@kdab.com if any conditions of this licensing are not
+** clear to you.
+**
+**********************************************************************/
+
+#ifndef KD_UPDATER_APPLICATION_H
+#define KD_UPDATER_APPLICATION_H
+
+#include "kdupdater.h"
+#include <QObject>
+
+class QUrl;
+
+namespace KDUpdater
+{
+ class PackagesInfo;
+ class SignatureVerifier;
+ class UpdateSourcesInfo;
+
+ class ConfigurationInterface {
+ public:
+ virtual ~ConfigurationInterface();
+ virtual QVariant value( const QString& key ) const = 0;
+ virtual void setValue( const QString& key, const QVariant& value ) = 0;
+ };
+
+ class KDTOOLS_UPDATER_EXPORT Application : public QObject
+ {
+ Q_OBJECT
+
+ public:
+ enum SignatureTarget {
+ Metadata,
+ Packages
+ };
+
+ explicit Application( ConfigurationInterface* config=0, QObject* parent=0);
+ ~Application();
+
+ static Application* instance();
+
+ void setApplicationDirectory(const QString& dir);
+ QString applicationDirectory() const;
+
+ QString applicationName() const;
+ QString applicationVersion() const;
+ int compatLevel() const;
+
+ const SignatureVerifier* signatureVerifier( SignatureTarget target ) const;
+ void setSignatureVerifier( SignatureTarget target, const SignatureVerifier* verifier );
+
+ void setPackagesXMLFileName(const QString& fileName);
+ QString packagesXMLFileName() const;
+ PackagesInfo* packagesInfo() const;
+
+ void addUpdateSource( const QString& name, const QString& title,
+ const QString& description, const QUrl& url, int priority = -1 );
+
+ void setUpdateSourcesXMLFileName(const QString& fileName);
+ QString updateSourcesXMLFileName() const;
+ UpdateSourcesInfo* updateSourcesInfo() const;
+
+ QStringList filesForDelayedDeletion() const;
+ void addFilesForDelayedDeletion( const QStringList& files );
+
+ public Q_SLOTS:
+ void printError( int errorCode, const QString& error );
+
+ private:
+ struct ApplicationData;
+ ApplicationData* d;
+ };
+
+}
+
+#endif