canic_core/ops/
service.rs1use crate::{
2 Error,
3 ops::{
4 OpsError,
5 pool::PoolOps,
6 random::RandomOps,
7 runtime::{cycles::CycleTrackerOps, log::LogOps},
8 storage::env::EnvOps,
9 },
10};
11
12pub struct TimerService;
18
19impl TimerService {
20 pub fn start_all() -> Result<(), Error> {
22 EnvOps::try_get_subnet_role()?;
24
25 CycleTrackerOps::start();
26 LogOps::start_retention();
27 RandomOps::start();
28
29 Ok(())
30 }
31
32 pub fn start_all_root() -> Result<(), Error> {
34 OpsError::require_root()?;
35
36 Self::start_all()?;
38
39 PoolOps::start();
41
42 Ok(())
43 }
44}