canic_core/workflow/state/
query.rs1use crate::{
2 dto::state::{AppStateView, SubnetStateView},
3 ops::storage::state::{app::AppStateOps, subnet::SubnetStateOps},
4 workflow::state::mapper::{AppStateMapper, SubnetStateMapper},
5};
6
7pub struct AppStateQuery;
12
13impl AppStateQuery {
14 #[must_use]
15 pub fn view() -> AppStateView {
16 let snapshot = AppStateOps::snapshot();
17
18 AppStateMapper::snapshot_to_view(snapshot)
19 }
20}
21
22pub struct SubnetStateQuery;
27
28impl SubnetStateQuery {
29 #[must_use]
30 pub fn view() -> SubnetStateView {
31 let snapshot = SubnetStateOps::snapshot();
32
33 SubnetStateMapper::snapshot_to_view(snapshot)
34 }
35}