fireEvent method
Future<HookedServiceEvent<Id, Data, T> >
fireEvent(
- HookedServiceEventDispatcher<
Id, Data, T> dispatcher, - HookedServiceEvent<
Id, Data, T> event, [ - HookedServiceEventListener<
Id, Data, T> ? callback
Sends an arbitrary event down the hook chain.
Implementation
Future<HookedServiceEvent<Id, Data, T>> fireEvent(
HookedServiceEventDispatcher<Id, Data, T> dispatcher,
HookedServiceEvent<Id, Data, T> event,
[HookedServiceEventListener<Id, Data, T>? callback]) {
Future? f;
if (callback != null && event._canceled != true) {
f = Future.sync(() => callback(event));
}
f ??= Future.value();
return f.then((_) => dispatcher._emit(event));
}