reifydb_transaction/transaction/catalog/
flow_edge.rs1use reifydb_core::interface::catalog::{change::CatalogTrackFlowEdgeChangeOperations, flow::FlowEdge};
5use reifydb_value::Result;
6
7use crate::{
8 change::{
9 Change,
10 OperationType::{Create, Delete},
11 },
12 transaction::admin::AdminTransaction,
13};
14
15impl CatalogTrackFlowEdgeChangeOperations for AdminTransaction {
16 fn track_flow_edge_created(&mut self, edge: FlowEdge) -> Result<()> {
17 let change = Change {
18 pre: None,
19 post: Some(edge),
20 op: Create,
21 };
22 self.changes.add_flow_edge_change(change);
23 Ok(())
24 }
25
26 fn track_flow_edge_deleted(&mut self, edge: FlowEdge) -> Result<()> {
27 let change = Change {
28 pre: Some(edge),
29 post: None,
30 op: Delete,
31 };
32 self.changes.add_flow_edge_change(change);
33 Ok(())
34 }
35}