21#include <quentier/utility/Linkage.h>
23#include <qevercloud/types/Note.h>
24#include <qevercloud/types/Notebook.h>
25#include <qevercloud/types/SavedSearch.h>
26#include <qevercloud/types/Tag.h>
35namespace quentier::synchronization {
92 using NotebookConflictResolution = std::variant<
97 using NoteConflictResolution = std::variant<
102 using SavedSearchConflictResolution = std::variant<
107 using TagConflictResolution = std::variant<
115 [[nodiscard]] virtual QFuture<NotebookConflictResolution>
116 resolveNotebookConflict(
117 qevercloud::Notebook theirs, qevercloud::Notebook mine) = 0;
119 [[nodiscard]] virtual QFuture<NoteConflictResolution> resolveNoteConflict(
120 qevercloud::Note theirs, qevercloud::Note mine) = 0;
122 [[nodiscard]] virtual QFuture<SavedSearchConflictResolution>
123 resolveSavedSearchConflict(
124 qevercloud::SavedSearch theirs, qevercloud::SavedSearch mine) = 0;
126 [[nodiscard]] virtual QFuture<TagConflictResolution> resolveTagConflict(
127 qevercloud::Tag theirs, qevercloud::Tag mine) = 0;
130QUENTIER_EXPORT QTextStream & operator<<(
134QUENTIER_EXPORT QDebug & operator<<(
138QUENTIER_EXPORT QTextStream & operator<<(
142QUENTIER_EXPORT QDebug & operator<<(
146QUENTIER_EXPORT QTextStream & operator<<(
150QUENTIER_EXPORT QDebug & operator<<(
154QUENTIER_EXPORT QTextStream & operator<<(
158QUENTIER_EXPORT QDebug & operator<<(
The ISyncConflictResolver interface provides methods used to resolve conflicts between local and remo...
Definition ISyncConflictResolver.h:42
The IgnoreMine conflict resolution means "use theirs versionand ignore mine version as it doesn't rea...
Definition ISyncConflictResolver.h:70
The MoveMine conflict resolution means "before using theirsversion change mine version as specified"....
Definition ISyncConflictResolver.h:82
T mine
Definition ISyncConflictResolver.h:88
The UseMine conflict resolution means "override theirs versionwith mine version".
Definition ISyncConflictResolver.h:62
The UseTheirs conflict resolution means "override mine versionwith theirs version".
Definition ISyncConflictResolver.h:55
The ConflictResolution struct is a namespace inside which several other structs determining actual co...
Definition ISyncConflictResolver.h:49