diff options
author | Molly Lloyd <mollymerp@users.noreply.github.com> | 2016-09-20 11:43:00 -0400 |
---|---|---|
committer | Tobrun <tobrun.van.nuland@gmail.com> | 2016-09-20 17:43:00 +0200 |
commit | 598f7c6ad5147417c7241514f1fdece348a9b997 (patch) | |
tree | 0e238b65c58cd0cd3cb5b9f10a12c35715ae9969 /platform/default/default_file_source.cpp | |
parent | 97da3872737ea08bdb2f50a22baf08aab123fafb (diff) | |
download | qtlocation-mapboxgl-598f7c6ad5147417c7241514f1fdece348a9b997.tar.gz |
[core] allow offline region metadata to be updated (#6338)
Diffstat (limited to 'platform/default/default_file_source.cpp')
-rw-r--r-- | platform/default/default_file_source.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/platform/default/default_file_source.cpp b/platform/default/default_file_source.cpp index 83674cea03..099890a035 100644 --- a/platform/default/default_file_source.cpp +++ b/platform/default/default_file_source.cpp @@ -62,6 +62,16 @@ public: callback(std::current_exception(), {}); } } + + void updateMetadata(const int64_t regionID, + const OfflineRegionMetadata& metadata, + std::function<void (std::exception_ptr, optional<OfflineRegionMetadata>)> callback) { + try { + callback({}, offlineDatabase.updateMetadata(regionID, metadata)); + } catch (...) { + callback(std::current_exception(), {}); + } + } void getRegionStatus(int64_t regionID, std::function<void (std::exception_ptr, optional<OfflineRegionStatus>)> callback) { try { @@ -208,6 +218,12 @@ void DefaultFileSource::createOfflineRegion(const OfflineRegionDefinition& defin thread->invoke(&Impl::createRegion, definition, metadata, callback); } +void DefaultFileSource::updateOfflineMetadata(const int64_t regionID, + const OfflineRegionMetadata& metadata, + std::function<void (std::exception_ptr, optional<OfflineRegionMetadata>)> callback) { + thread->invoke(&Impl::updateMetadata, regionID, metadata, callback); +} + void DefaultFileSource::deleteOfflineRegion(OfflineRegion&& region, std::function<void (std::exception_ptr)> callback) { thread->invoke(&Impl::deleteRegion, std::move(region), callback); } |