summaryrefslogtreecommitdiff
path: root/plugins-alternative/CopyEngine/Rsync/RmPath.h
diff options
context:
space:
mode:
authorThomas Preud'homme <robotux@celest.fr>2013-03-21 11:01:59 +0100
committerThomas Preud'homme <robotux@celest.fr>2013-03-21 11:01:59 +0100
commite297dbd8052ef4e66f069e2dd1865ae7fa8af28e (patch)
tree342fea0a2f6f33b8b62dad2d1729f8209da1a1ba /plugins-alternative/CopyEngine/Rsync/RmPath.h
parent8f9f382e1c97cab2e72e97495650c73ac4b97314 (diff)
Imported Upstream version 0.3.1.0
Diffstat (limited to 'plugins-alternative/CopyEngine/Rsync/RmPath.h')
-rw-r--r--plugins-alternative/CopyEngine/Rsync/RmPath.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/plugins-alternative/CopyEngine/Rsync/RmPath.h b/plugins-alternative/CopyEngine/Rsync/RmPath.h
new file mode 100644
index 0000000..c3cd77b
--- /dev/null
+++ b/plugins-alternative/CopyEngine/Rsync/RmPath.h
@@ -0,0 +1,58 @@
+/** \file RmPath.h
+\brief Remove the path given as queued rmpath
+\author alpha_one_x86
+\version 0.3
+\date 2011 */
+
+#ifndef RMPATH_H
+#define RMPATH_H
+
+#include <QThread>
+#include <QFileInfo>
+#include <QString>
+#include <QSemaphore>
+#include <QStringList>
+#include <QDir>
+
+#include "Environment.h"
+
+/// \brief Remove the path given as queued rmpath
+class RmPath : public QThread
+{
+ Q_OBJECT
+public:
+ explicit RmPath();
+ ~RmPath();
+ /// \brief add new path to remove
+ void addPath(const QString &path,const bool &toSync);
+signals:
+ void errorOnFolder(const QFileInfo &,const QString &);
+ void firstFolderFinish();
+ void internalStartAddPath(const QString &path,const bool &toSync);
+ void internalStartDoThisPath();
+ void internalStartSkip();
+ void internalStartRetry();
+ void debugInformation(const DebugLevel &level,const QString &fonction,const QString &text,const QString &file,const int &ligne);
+public slots:
+ void skip();
+ void retry();
+private:
+ void run();
+ bool waitAction;
+ bool stopIt;
+ bool skipIt;
+ QStringList pathList;
+ QList<bool> toSyncList;
+ void checkIfCanDoTheNext();
+ QDir dir;
+ bool rmpath(const QDir &dir,const bool &toSync);
+ bool rmfile(QString filePath);
+private slots:
+ void internalDoThisPath();
+ void internalAddPath(const QString &path,const bool &toSync);
+ void internalSkip();
+ void internalRetry();
+};
+
+
+#endif // RMPATH_H