File indexing completed on 2024-12-08 09:42:55

0001 /*
0002     SPDX-FileCopyrightText: 2012 Sebastian Kügler <sebas@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef KPACKAGE_PACKAGEJOB_P_H
0008 #define KPACKAGE_PACKAGEJOB_P_H
0009 
0010 #include <KJob>
0011 
0012 namespace KPackage
0013 {
0014 class PackageJobPrivate;
0015 class Package;
0016 
0017 class PackageJob : public KJob
0018 {
0019     Q_OBJECT
0020 
0021 public:
0022     PackageJob(Package *package, QObject *parent = nullptr);
0023     ~PackageJob() override;
0024 
0025     void start() override;
0026 
0027     void install(const QString &src, const QString &dest);
0028     void update(const QString &src, const QString &dest);
0029     void uninstall(const QString &installationPath);
0030 
0031 Q_SIGNALS:
0032     void installPathChanged(const QString &path);
0033 
0034 private Q_SLOTS:
0035     void slotFinished(bool ok, const QString &err);
0036 
0037 private:
0038     void setupNotificationsOnJobFinished(const QString &messageName);
0039 
0040     PackageJobPrivate *const d;
0041 };
0042 
0043 }
0044 
0045 #endif