clearOldData method
Future<void>
clearOldData(
{ - int daysToKeep = 30,
})
override
Implementation
@override
Future<void> clearOldData({int daysToKeep = 30}) async {
try {
final cutoffDate = DateTime.now().subtract(Duration(days: daysToKeep));
// Limpar erros antigos
final allErrors = await _errorManager.getAllErrors();
final oldErrors =
allErrors.where((error) => error.timestamp.isBefore(cutoffDate));
for (final error in oldErrors) {
await _errorManager.removeError(error.id);
}
// Limpar logs antigos
await _clearOldDataByPrefix(_syncLogPrefix, cutoffDate);
_loggerProvider?.info(
'Old data cleared successfully (older than $daysToKeep days)',
category: 'SyncDataCleanupService',
metadata: {
'daysToKeep': daysToKeep,
'cutoffDate': cutoffDate.toIso8601String(),
'errorsRemoved': oldErrors.length,
},
);
} catch (e) {
_loggerProvider?.error(
'Failed to clear old data: $e',
category: 'SyncDataCleanupService',
exception: e,
);
rethrow;
}
}