execute method
Implementation
@override
Future<RawEvent?> execute(RawEvent event) async {
final analytics = this.analytics;
if (analytics == null ||
!SessionPluginHelper.isEnabled(analytics.state.configuration.state)) {
return event;
}
final currentTime = now();
final config = analytics.state.configuration.state;
final result = await _sessionStateCoordinator.processEvent(
sessionStateStore: analytics.state.sessionState,
config: config,
now: currentTime,
messageId: event.messageId ?? '',
timestamp: event.timestamp ??
DateTime.fromMillisecondsSinceEpoch(currentTime, isUtc: true)
.toIso8601String(),
);
event.context = _addSessionContext(event.context, result.contextSession);
return event;
}