flushStoredEvents method
Internal flush: get events from storage, send, if failed re-save
Implementation
Future<void> flushStoredEvents() async {
await _flushLock.synchronized(() async {
final events = await storageHandler.getAndClearEvents();
if (events == null || events.trim().isEmpty) return;
try {
final success = await _sendEvents(events);
if (!success) {
dbLogger.warning('Sending events failed, re-saving to storage');
await storageHandler.saveEvents(events);
}
} catch (e, st) {
dbLogger.severe('flushStoredEvents failed', e, st);
await storageHandler.saveEvents(events);
}
});
}