SlowSyncManager
internal fun SlowSyncManager( slowSyncCriteriaProvider: SlowSyncCriteriaProvider, slowSyncRepository: SlowSyncRepository, slowSyncWorker: SlowSyncWorker, slowSyncRecoveryHandler: SlowSyncRecoveryHandler, networkStateObserver: <Error class: unknown class>, syncMigrationStepsProvider: () -> SyncMigrationStepsProvider, userScopedLogger: <Error class: unknown class>, kaliumDispatcher: <Error class: unknown class> = KaliumDispatcherImpl, exponentialDurationHelper: ExponentialDurationHelper = ExponentialDurationHelperImpl(
SlowSyncManager.MIN_RETRY_DELAY,
SlowSyncManager.MAX_RETRY_DELAY
)): SlowSyncManager
Starts and stops SlowSync based on a set of criteria, defined in SlowSyncCriteriaProvider. Once the criteria are met, this Manager will take care of running SlowSync.
Ideally, SlowSync should run only once after the initial log-in / client registration. But IncrementalSyncManager might invalidate this and request a new SlowSync in case some Event is lost.