reactive_graph_reactive_service_api/
reactive_instance_events.rs1use uuid::Uuid;
2
3use reactive_graph_graph::RelationInstanceId;
4
5#[derive(Eq, Hash, PartialEq, Clone, Debug)]
6pub enum ReactiveInstanceEventTypes {
7 EntityInstanceCreated,
8 EntityInstanceDeleted,
9 RelationInstanceCreated,
10 RelationInstanceDeleted,
11 FlowInstanceCreated,
12 FlowInstanceDeleted,
13}
14
15pub enum ReactiveInstanceEvent {
16 EntityInstanceCreated(Uuid),
17 EntityInstanceDeleted(Uuid),
18 RelationInstanceCreated(RelationInstanceId),
19 RelationInstanceDeleted(RelationInstanceId),
20 FlowInstanceCreated(Uuid),
21 FlowInstanceDeleted(Uuid),
22}
23
24impl From<&ReactiveInstanceEvent> for ReactiveInstanceEventTypes {
25 fn from(event: &ReactiveInstanceEvent) -> Self {
26 match event {
27 ReactiveInstanceEvent::EntityInstanceCreated(_) => ReactiveInstanceEventTypes::EntityInstanceCreated,
28 ReactiveInstanceEvent::EntityInstanceDeleted(_) => ReactiveInstanceEventTypes::EntityInstanceDeleted,
29 ReactiveInstanceEvent::RelationInstanceCreated(_) => ReactiveInstanceEventTypes::RelationInstanceCreated,
30 ReactiveInstanceEvent::RelationInstanceDeleted(_) => ReactiveInstanceEventTypes::RelationInstanceDeleted,
31 ReactiveInstanceEvent::FlowInstanceCreated(_) => ReactiveInstanceEventTypes::FlowInstanceCreated,
32 ReactiveInstanceEvent::FlowInstanceDeleted(_) => ReactiveInstanceEventTypes::FlowInstanceDeleted,
33 }
34 }
35}