Restore on Device
#
Fetch BooksTBD: Описание зачем делать fetch
To fetch user books, you need to call:
let booksRepository = BooksRepository()booksRepository.getBooks { (result) in switch result { case .success(let books): // display a list of books and provide books for selection case .failure(_): // your implementation }}
#
Begin RestoreTBD: Нужно детальней описать пример
To restore contacts, you need to call:
books
- list of user books from which contacts should be restored.
CloudikeContacts.shared.restoreProcessor.restore(from: books) { (success, error) in }
#
MonitoringTo monitor the restore status, you need to call:
CloudikeContacts.shared.restoreProcessor.registerObserver(observer)
To cancel monitoring, you need to call:
CloudikeContacts.shared.restoreProcessor.unregisterObserver(observer)
TBD: Описание прогресса рестора, стрктура нотификаций и значение
The following example shows how to do that:
class RestoreProgressViewController: UIViewController { override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) CloudikeContacts.shared.restoreProcessor.registerObserver(self) }
override func viewWillDisappear(_ animated: Bool) { super.viewWillDisappear(animated) CloudikeContacts.shared.restoreProcessor.unregisterObserver(self) }}
extension RestoreProgressViewController: RestoreObserver { func restoreStateChanged(state: RestoreProcessor.RestoreState) { // your implementation } }