SessionHelper class

Session management — extracted from the old event.dart SessionHelper. Adds delivery tracking, pending session start queue, timestamp normalization. Removes session_end logic entirely.

Constructors

SessionHelper()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

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

Static Properties

onLookupEventPresence Future<bool?> Function(String eventName, int tsMillis)?
getter/setter pair
onRecordEvent Future<void> Function(Event event)?
Callback type for recording events (injected from main tracker).
getter/setter pair

Static Methods

configureTestHooks({Future<void> pendingSessionStartsMutationHook(String operation)?}) → void
getCurrentSessionId() String
getCurrentSessionStart() int
getLastEngagementTs() int
getLastEventTimestamp() int
getPendingNonDurableTimestamps() List<int>
Get pending (non-delivered) session starts for replay.
getSessionNumber() int
hasActiveSession() bool
increaseSessionNumber() Future<void>
isSessionExpired(int currentTs) bool
markAllPendingSessionStartsNonDurable() Future<void>
Mark all pending session_starts as non-durable (when DB rebuild happens).
markSessionStartDelivered(int tsMillis) Future<void>
Mark a session_start as delivered (called after HTTP 200).
reconcilePendingNonDurableSessionStarts(Future<bool?> lookupEventPresence(String eventName, int tsMillis), Future<void> persistEvent(Event event), {required bool allowReplayWithoutSignal}) Future<bool>
replayPendingNonDurableSessionStarts(Future<void> persistEvent(Event event)) Future<void>
Rebuild non-delivered session_start events after local storage loss.
resetStaticState() → void
Reset cached static state. Must be called when the SDK is re-initialized to prevent stale in-memory values from a previous session.
setCurrentSessionStart(int ts) Future<void>
setLastEventTimestamp(int ts) Future<void>
startSession() Future<void>

Constants

sessionTimeout → const int