diff options
Diffstat (limited to 'src/libs/kdtools/kdupdaterupdatefinder.h')
-rw-r--r-- | src/libs/kdtools/kdupdaterupdatefinder.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/libs/kdtools/kdupdaterupdatefinder.h b/src/libs/kdtools/kdupdaterupdatefinder.h new file mode 100644 index 000000000..4faa97dab --- /dev/null +++ b/src/libs/kdtools/kdupdaterupdatefinder.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** 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_UPDATE_FINDER_H +#define KD_UPDATER_UPDATE_FINDER_H + +#include "kdupdater.h" +#include "kdupdatertask.h" + +#include <QList> +#include <QMap> + +QT_BEGIN_NAMESPACE +class QUrl; +QT_END_NAMESPACE + +namespace KDUpdater { + +class Application; +class Update; +struct UpdateSourceInfo; + +class KDTOOLS_EXPORT UpdateFinder : public Task +{ + Q_OBJECT + +public: + explicit UpdateFinder(Application *application); + ~UpdateFinder(); + + Application *application() const; + QList<Update *> updates() const; + + void setUpdateType(UpdateTypes type); + UpdateTypes updateType() const; + +private: + void doRun(); + bool doStop(); + bool doPause(); + bool doResume(); + + Update *constructUpdate(Application *application, const UpdateSourceInfo &sourceInfo, + UpdateType type, const QUrl &updateUrl, const QMap<QString, QVariant> &data, + quint64 compressedSize, quint64 uncompressedSize, const QByteArray &sha1sum); + +private: + class Private; + Private *d; + Q_PRIVATE_SLOT(d, void slotDownloadDone()) +}; + +} // namespace KDUpdater + +#endif // KD_UPDATER_UPDATE_FINDER_H |