cleanupOldSyncedLogs method

  1. @override
Future<void> cleanupOldSyncedLogs(
  1. DateTime olderThan
)
override

Remove logs sincronizados mais antigos que a data especificada

Implementation

@override
Future<void> cleanupOldSyncedLogs(DateTime olderThan) async {
  try {
    final allLogs = await _getAllLogs();
    final logsToRemove = allLogs
        .where((log) =>
            log.isSynced &&
            log.syncedAt != null &&
            log.syncedAt!.isBefore(olderThan))
        .toList();

    for (final log in logsToRemove) {
      await removeLog(log.syncId);
    }

    developer.log(
      'Limpeza de logs antigos concluída: ${logsToRemove.length} logs removidos',
      name: 'InternalSyncLogStorage',
      level: 800,
    );
  } catch (e) {
    developer.log(
      'Erro ao limpar logs antigos: $e',
      name: 'InternalSyncLogStorage',
      level: 1000,
    );
  }
}