1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
/*
SPDX-FileCopyrightText: 2013-2014 Maciej Poleski
SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
*/
#ifndef BAZAAR_COPYJOB_H
#define BAZAAR_COPYJOB_H
#include <QUrl>
#include <QPointer>
#include <vcs/vcsjob.h>
#include <ctime>
namespace KIO
{
class Job;
}
class BazaarPlugin;
class CopyJob : public KDevelop::VcsJob
{
Q_OBJECT
public:
CopyJob(const QUrl& localLocationSrc, const QUrl& localLocationDstn, BazaarPlugin* parent = nullptr, OutputJobVerbosity verbosity = OutputJob::Verbose);
KDevelop::IPlugin* vcsPlugin() const override;
KDevelop::VcsJob::JobStatus status() const override;
QVariant fetchResults() override;
void start() override;
protected:
bool doKill() override;
private Q_SLOTS:
void finish(KJob*);
void addToVcs(KIO::Job* job, const QUrl& from, const QUrl& to, const QDateTime& mtime, bool directory, bool renamed);
private:
BazaarPlugin* m_plugin;
QUrl m_source;
QUrl m_destination;
JobStatus m_status;
QPointer<KJob> m_job;
};
#endif // BAZAAR_COPYJOB_H
|