freya_core/events/
executor.rs1pub enum EventsChunk {
2 Batch(Vec<EmmitableEvent>),
3 Processed(ProcessedEvents<NodeId, EventName, EmmitableEvent, PlatformEvent>),
4}
5use ragnarok::ProcessedEvents;
6
7use crate::{
8 events::{
9 emittable::EmmitableEvent,
10 name::EventName,
11 },
12 integration::PlatformEvent,
13 node_id::NodeId,
14 runner::Runner,
15};
16
17pub struct EventsExecutorAdapter<'a> {
18 pub runner: &'a mut Runner,
19}
20
21impl ragnarok::EventsExecutor for EventsExecutorAdapter<'_> {
22 type Key = NodeId;
23 type Name = EventName;
24 type Source = PlatformEvent;
25 type Emmitable = EmmitableEvent;
26
27 fn emit_event(&mut self, event: Self::Emmitable) -> bool {
28 self.runner
30 .handle_event(event.node_id, event.name, event.data, event.bubbles)
31 }
32}