EventStorageHandler class

Coordinator between SqliteEventStorage and MemoryEventQueue. Provides a unified interface for event persistence.

Constructors

EventStorageHandler({int maxEventsStored = SqliteEventStorage.defaultMaxEvents, int nowProvider()?, int dbRecoveryCooldownMs = _defaultDbRecoveryCooldownMs})
EventStorageHandler.withStorage({required SqliteEventStorage sqliteStorage, MemoryEventQueue? memoryQueue, int nowProvider()?, int dbRecoveryCooldownMs = _defaultDbRecoveryCooldownMs})

Properties

dbAvailable → bool
no setter
hashCode → int
The hash code for this object.
no setterinherited
hasPendingDeliveryReplay → bool
no setter
pendingSqliteDeleteCount → int
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

clearPendingDeliveryReplay() → void
consumeDroppedDueToCapCount() → Future<int>
deleteBatch(List<int> ids) → Future<int>
Delete successfully flushed events by their IDs. Negative IDs are routed to the memory queue (seq = -(id) - 1), positive IDs are routed to SQLite.
deleteBatchDetailed(List<int> ids) → Future<DeleteBatchResult>
dispose() → Future<void>
Clean up resources.
getEventCount() → Future<int>
Get total event count across SQLite + memory.
init() → Future<void>
Initialize storage — open SQLite, migrate legacy SharedPreferences data.
insertEvent(int tsMillis, String eventName, String payloadJson) → Future<bool>
Insert an event. Tries SQLite first, falls back to memory queue.
lookupEventPresence(String eventName, int tsMillis) → Future<bool?>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onFlushComplete() → Future<void>
Notify storage that a flush cycle completed (for WAL checkpoint).
readBatch(int limit) → Future<List<EventRow>>
Read a batch of events for flushing. Priority events come first. Memory queue events are returned with negative IDs (-(seq+1)) to distinguish them from SQLite rows, enabling correct deletion routing.
releaseBatchReservations(List<int> ids) → Future<void>
Release in-flight reservations after a flush attempt fails.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited