2011-04-06 13:48:02 +04:00
|
|
|
/*
|
|
|
|
* Copyright (C) by Duncan Mac-Vicar P. <duncan@kde.org>
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful, but
|
|
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
|
|
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
|
|
* for more details.
|
|
|
|
*/
|
|
|
|
|
2011-04-04 20:41:14 +04:00
|
|
|
#ifndef MIRALL_SYNCRESULT_H
|
|
|
|
#define MIRALL_SYNCRESULT_H
|
|
|
|
|
|
|
|
#include <QStringList>
|
2012-01-24 01:10:01 +04:00
|
|
|
#include <QHash>
|
2013-01-15 23:41:52 +04:00
|
|
|
#include <QDateTime>
|
|
|
|
|
2014-04-29 17:30:19 +04:00
|
|
|
#include "owncloudlib.h"
|
2014-07-11 02:31:24 +04:00
|
|
|
#include "syncfileitem.h"
|
2011-04-04 20:41:14 +04:00
|
|
|
|
2014-11-10 00:34:07 +03:00
|
|
|
namespace OCC {
|
2011-04-04 20:41:14 +04:00
|
|
|
|
2015-06-29 19:56:09 +03:00
|
|
|
/**
|
|
|
|
* @brief The SyncResult class
|
|
|
|
* @ingroup libsync
|
2015-06-26 18:07:47 +03:00
|
|
|
*/
|
2014-04-29 17:30:19 +04:00
|
|
|
class OWNCLOUDSYNC_EXPORT SyncResult
|
2011-04-04 20:41:14 +04:00
|
|
|
{
|
|
|
|
public:
|
2012-02-20 19:45:27 +04:00
|
|
|
enum Status {
|
2011-10-13 18:41:24 +04:00
|
|
|
Undefined,
|
2012-02-20 19:45:27 +04:00
|
|
|
NotYetStarted,
|
2013-02-14 19:25:00 +04:00
|
|
|
SyncPrepare,
|
2012-02-20 19:45:27 +04:00
|
|
|
SyncRunning,
|
2013-10-03 15:41:15 +04:00
|
|
|
SyncAbortRequested,
|
2011-10-13 18:41:24 +04:00
|
|
|
Success,
|
2013-08-02 13:33:45 +04:00
|
|
|
Problem,
|
2011-10-13 18:41:24 +04:00
|
|
|
Error,
|
2013-01-16 17:39:43 +04:00
|
|
|
SetupError,
|
2014-08-15 17:01:01 +04:00
|
|
|
Paused
|
2011-04-08 13:36:53 +04:00
|
|
|
};
|
|
|
|
|
2011-10-13 18:41:24 +04:00
|
|
|
SyncResult();
|
2017-01-25 13:28:18 +03:00
|
|
|
void reset();
|
|
|
|
|
|
|
|
void appendErrorString(const QString &);
|
2011-09-26 20:19:01 +04:00
|
|
|
QString errorString() const;
|
2012-03-22 19:22:08 +04:00
|
|
|
QStringList errorStrings() const;
|
2012-04-17 15:12:53 +04:00
|
|
|
void clearErrors();
|
|
|
|
|
2012-03-22 19:22:08 +04:00
|
|
|
void setStatus(Status);
|
2012-02-20 19:45:27 +04:00
|
|
|
Status status() const;
|
2012-07-30 18:09:49 +04:00
|
|
|
QString statusString() const;
|
2013-01-15 23:41:52 +04:00
|
|
|
QDateTime syncTime() const;
|
2013-08-06 20:04:42 +04:00
|
|
|
void setFolder(const QString &folder);
|
|
|
|
QString folder() const;
|
2011-04-08 13:36:53 +04:00
|
|
|
|
2017-01-25 13:28:18 +03:00
|
|
|
bool foundFilesNotSynced() const { return _foundFilesNotSynced; }
|
|
|
|
bool folderStructureWasChanged() const { return _folderStructureWasChanged; }
|
|
|
|
|
|
|
|
int numNewItems() const { return _numNewItems; }
|
|
|
|
int numRemovedItems() const { return _numRemovedItems; }
|
|
|
|
int numUpdatedItems() const { return _numUpdatedItems; }
|
|
|
|
int numRenamedItems() const { return _numRenamedItems; }
|
2017-07-12 11:57:41 +03:00
|
|
|
int numNewConflictItems() const { return _numNewConflictItems; }
|
|
|
|
int numOldConflictItems() const { return _numOldConflictItems; }
|
2017-01-25 13:28:18 +03:00
|
|
|
int numErrorItems() const { return _numErrorItems; }
|
|
|
|
|
|
|
|
const SyncFileItemPtr &firstItemNew() const { return _firstItemNew; }
|
|
|
|
const SyncFileItemPtr &firstItemDeleted() const { return _firstItemDeleted; }
|
|
|
|
const SyncFileItemPtr &firstItemUpdated() const { return _firstItemUpdated; }
|
|
|
|
const SyncFileItemPtr &firstItemRenamed() const { return _firstItemRenamed; }
|
2017-07-12 11:57:41 +03:00
|
|
|
const SyncFileItemPtr &firstNewConflictItem() const { return _firstNewConflictItem; }
|
2017-01-25 13:28:18 +03:00
|
|
|
const SyncFileItemPtr &firstItemError() const { return _firstItemError; }
|
|
|
|
|
|
|
|
void processCompletedItem(const SyncFileItemPtr &item);
|
|
|
|
|
2011-04-04 20:41:14 +04:00
|
|
|
private:
|
2013-01-15 23:41:52 +04:00
|
|
|
Status _status;
|
|
|
|
SyncFileItemVector _syncItems;
|
|
|
|
QDateTime _syncTime;
|
2013-08-06 20:04:42 +04:00
|
|
|
QString _folder;
|
2011-04-08 13:36:53 +04:00
|
|
|
/**
|
|
|
|
* when the sync tool support this...
|
|
|
|
*/
|
2013-01-15 23:41:52 +04:00
|
|
|
QStringList _errors;
|
2017-01-25 13:28:18 +03:00
|
|
|
bool _foundFilesNotSynced;
|
|
|
|
bool _folderStructureWasChanged;
|
|
|
|
|
|
|
|
// count new, removed and updated items
|
|
|
|
int _numNewItems;
|
|
|
|
int _numRemovedItems;
|
|
|
|
int _numUpdatedItems;
|
|
|
|
int _numRenamedItems;
|
2017-07-12 11:57:41 +03:00
|
|
|
int _numNewConflictItems;
|
|
|
|
int _numOldConflictItems;
|
2017-01-25 13:28:18 +03:00
|
|
|
int _numErrorItems;
|
|
|
|
|
|
|
|
SyncFileItemPtr _firstItemNew;
|
|
|
|
SyncFileItemPtr _firstItemDeleted;
|
|
|
|
SyncFileItemPtr _firstItemUpdated;
|
|
|
|
SyncFileItemPtr _firstItemRenamed;
|
2017-07-12 11:57:41 +03:00
|
|
|
SyncFileItemPtr _firstNewConflictItem;
|
2017-01-25 13:28:18 +03:00
|
|
|
SyncFileItemPtr _firstItemError;
|
2011-04-04 20:41:14 +04:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|