diff options
author | r.kuznetsov <r.kuznetsov@corp.mail.ru> | 2018-03-16 19:03:58 +0300 |
---|---|---|
committer | Daria Volvenkova <d.volvenkova@corp.mail.ru> | 2018-04-02 15:53:03 +0300 |
commit | f50347164c541163b1086bebdc23eafba82790ee (patch) | |
tree | 2f1f291d2bcbbec39ffc59ec4104e153a3b92eda /map/bookmark_manager.hpp | |
parent | 9a7f424bb11a64a58fd2846bd62f34d67a38c9ee (diff) |
Added cloud restoring
Diffstat (limited to 'map/bookmark_manager.hpp')
-rw-r--r-- | map/bookmark_manager.hpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/map/bookmark_manager.hpp b/map/bookmark_manager.hpp index e2dd565ce3..2bb00245bc 100644 --- a/map/bookmark_manager.hpp +++ b/map/bookmark_manager.hpp @@ -128,7 +128,6 @@ public: }; explicit BookmarkManager(Callbacks && callbacks); - ~BookmarkManager(); void SetDrapeEngine(ref_ptr<df::DrapeEngine> engine); @@ -244,6 +243,12 @@ public: using ConversionHandler = platform::SafeCallback<void(bool success)>; void ConvertAllKmlFiles(ConversionHandler && handler) const; + // These handlers are always called from UI-thread. + void SetCloudHandlers(Cloud::SynchronizationStartedHandler && onSynchronizationStarted, + Cloud::SynchronizationFinishedHandler && onSynchronizationFinished, + Cloud::RestoreRequestedHandler && onRestoreRequested, + Cloud::RestoredFilesPreparedHandler && onRestoredFilesPrepared); + /// These functions are public for unit tests only. You shouldn't call them from client code. void SaveToKML(df::MarkGroupID groupId, std::ostream & s); void CreateCategories(KMLDataCollection && dataCollection, bool autoSave = true); @@ -397,6 +402,12 @@ private: void SaveToKML(BookmarkCategory * group, std::ostream & s); + void OnSynchronizationStarted(Cloud::SynchronizationType type); + void OnSynchronizationFinished(Cloud::SynchronizationType type, Cloud::SynchronizationResult result, + std::string const & errorStr); + void OnRestoreRequested(Cloud::RestoringRequestResult result, uint64_t backupTimestampInMs); + void OnRestoredFilesPrepared(); + ThreadChecker m_threadChecker; Callbacks m_callbacks; @@ -438,6 +449,10 @@ private: std::list<BookmarkLoaderInfo> m_bookmarkLoadingQueue; Cloud m_bookmarkCloud; + Cloud::SynchronizationStartedHandler m_onSynchronizationStarted; + Cloud::SynchronizationFinishedHandler m_onSynchronizationFinished; + Cloud::RestoreRequestedHandler m_onRestoreRequested; + Cloud::RestoredFilesPreparedHandler m_onRestoredFilesPrepared; DISALLOW_COPY_AND_MOVE(BookmarkManager); }; |