|
|
|
|
@ -169,7 +169,10 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
final backgroundSyncManager = _ref.read(backgroundSyncProvider);
|
|
|
|
|
_isCleanedUp = true;
|
|
|
|
|
_ref.dispose();
|
|
|
|
|
|
|
|
|
|
_cancellationToken.cancel();
|
|
|
|
|
_logger.info("Cleaning up background worker");
|
|
|
|
|
final cleanupFutures = [
|
|
|
|
|
@ -179,14 +182,13 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi {
|
|
|
|
|
}),
|
|
|
|
|
_drift.close(),
|
|
|
|
|
_driftLogger.close(),
|
|
|
|
|
_ref.read(backgroundSyncProvider).cancel(),
|
|
|
|
|
_ref.read(backgroundSyncProvider).cancelLocal(),
|
|
|
|
|
backgroundSyncManager.cancel(),
|
|
|
|
|
backgroundSyncManager.cancelLocal(),
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
if (_isar.isOpen) {
|
|
|
|
|
cleanupFutures.add(_isar.close());
|
|
|
|
|
}
|
|
|
|
|
_ref.dispose();
|
|
|
|
|
await Future.wait(cleanupFutures);
|
|
|
|
|
_logger.info("Background worker resources cleaned up");
|
|
|
|
|
} catch (error, stack) {
|
|
|
|
|
@ -195,6 +197,8 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<void> _handleBackup() async {
|
|
|
|
|
await runZonedGuarded(
|
|
|
|
|
() async {
|
|
|
|
|
if (!_isBackupEnabled || _isCleanedUp) {
|
|
|
|
|
_logger.info("[_handleBackup 1] Backup is disabled. Skipping backup routine");
|
|
|
|
|
return;
|
|
|
|
|
@ -224,6 +228,11 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi {
|
|
|
|
|
return _ref
|
|
|
|
|
.read(uploadServiceProvider)
|
|
|
|
|
.startBackupWithHttpClient(currentUser.id, networkCapabilities.hasWifi, _cancellationToken);
|
|
|
|
|
},
|
|
|
|
|
(error, stack) {
|
|
|
|
|
debugPrint("Error in backup zone $error, $stack");
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<void> _syncAssets({Duration? hashTimeout}) async {
|
|
|
|
|
|