19 #ifndef LIB_QUENTIER_SYNCHRONIZATION_SYNCHRONIZATION_MANAGER_H
20 #define LIB_QUENTIER_SYNCHRONIZATION_SYNCHRONIZATION_MANAGER_H
22 #include <quentier/synchronization/ForwardDeclarations.h>
23 #include <quentier/types/Account.h>
24 #include <quentier/types/ErrorString.h>
25 #include <quentier/types/LinkedNotebook.h>
26 #include <quentier/utility/ForwardDeclarations.h>
27 #include <quentier/utility/Linkage.h>
33 QT_FORWARD_DECLARE_CLASS(LocalStorageManagerAsync)
34 QT_FORWARD_DECLARE_CLASS(SynchronizationManagerPrivate)
84 QObject * parent =
nullptr, INoteStorePtr pNoteStore = {},
85 IUserStorePtr pUserStore = {},
86 IKeychainServicePtr pKeychainService = {},
87 ISyncStateStoragePtr pSyncStateStorage = {});
103 bool downloadNoteThumbnailsOption()
const;
120 void setAccount(
Account account);
143 void authenticateCurrentAccount();
162 void revokeAuthentication(
const qevercloud::UserID userId);
175 void setDownloadNoteThumbnails(
bool flag);
185 void setDownloadInkNoteImages(
bool flag);
204 void setInkNoteImagesStoragePath(QString path);
250 Account account,
bool somethingDownloaded,
bool somethingSent);
263 void authenticationRevoked(
264 bool success,
ErrorString errorDescription, qevercloud::UserID userId);
279 void authenticationFinished(
286 void remoteToLocalSyncStopped();
292 void sendLocalChangesStopped();
304 void willRepeatRemoteToLocalSyncAfterSendingChanges();
317 void detectedConflictDuringLocalChangesSending();
328 void rateLimitExceeded(qint32 secondsToWait);
343 void remoteToLocalSyncDone(
bool somethingDownloaded);
360 void syncChunksDownloadProgress(
361 qint32 highestDownloadedUsn, qint32 highestServerUsn,
362 qint32 lastPreviousUsn);
368 void syncChunksDownloaded();
393 void linkedNotebookSyncChunksDownloadProgress(
394 qint32 highestDownloadedUsn, qint32 highestServerUsn,
401 void linkedNotebooksSyncChunksDownloaded();
411 void notesDownloadProgress(
412 quint32 notesDownloaded, quint32 totalNotesToDownload);
422 void linkedNotebooksNotesDownloadProgress(
423 quint32 notesDownloaded, quint32 totalNotesToDownload);
435 void resourcesDownloadProgress(
436 quint32 resourcesDownloaded, quint32 totalResourcesToDownload);
448 void linkedNotebooksResourcesDownloadProgress(
449 quint32 resourcesDownloaded, quint32 totalResourcesToDownload);
456 void preparedDirtyObjectsForSending();
463 void preparedLinkedNotebooksDirtyObjectsForSending();
470 void setAccountDone(
Account account);
476 void setDownloadNoteThumbnailsDone(
bool flag);
482 void setDownloadInkNoteImagesDone(
bool flag);
488 void setInkNoteImagesStoragePathDone(QString path);
494 SynchronizationManagerPrivate * d_ptr;
500 #endif // LIB_QUENTIER_SYNCHRONIZATION_SYNCHRONIZATION_MANAGER_H