pub fn sync_multiple(
engines: &[&dyn SyncEngine],
persisted_global_state: &mut Option<String>,
mem_cached_state: &mut MemoryCachedState,
storage_init: &Sync15StorageClientInit,
root_sync_key: &KeyBundle,
interruptee: &dyn Interruptee,
req_info: Option<SyncRequestInfo<'_>>,
) -> SyncResult
Expand description
Sync multiple engines
engines
- The engines to syncpersisted_global_state
- The global state to use, or None if never before provided. At the end of the sync, and even when the sync fails, the value in this cell should be persisted to permanent storage and provided next time the sync is called.last_client_info
- The client state to use, or None if never before provided. At the end of the sync, the value should be persisted in memory only - it should not be persisted to disk.storage_init
- Information about how the sync http client should be configured.root_sync_key
- The KeyBundle used for encryption.
Returns a map, keyed by name and holding an error value - if any engine fails, the sync will continue on to other engines, but the error will be places in this map. The absence of a name in the map implies the engine succeeded.