Skip to main content

canic_core/api/lifecycle/
nonroot.rs

1use crate::{
2    config::schema::ConfigModel, dto::abi::v1::CanisterInitPayload, ids::CanisterRole, lifecycle,
3};
4
5///
6/// LifecycleApi
7///
8
9pub struct LifecycleApi;
10
11impl LifecycleApi {
12    pub fn init_nonroot_canister_before_bootstrap(
13        role: CanisterRole,
14        payload: CanisterInitPayload,
15        config: ConfigModel,
16        config_source: &str,
17        config_path: &str,
18    ) {
19        lifecycle::init::nonroot::init_nonroot_canister_before_bootstrap(
20            role,
21            payload,
22            config,
23            config_source,
24            config_path,
25        );
26    }
27
28    pub fn schedule_init_nonroot_bootstrap(args: Option<Vec<u8>>) {
29        lifecycle::init::nonroot::schedule_init_nonroot_bootstrap(args);
30    }
31
32    pub fn post_upgrade_nonroot_canister_before_bootstrap(
33        role: CanisterRole,
34        config: ConfigModel,
35        config_source: &str,
36        config_path: &str,
37    ) {
38        lifecycle::upgrade::nonroot::post_upgrade_nonroot_canister_before_bootstrap(
39            role,
40            config,
41            config_source,
42            config_path,
43        );
44    }
45
46    pub fn schedule_post_upgrade_nonroot_bootstrap() {
47        lifecycle::upgrade::nonroot::schedule_post_upgrade_nonroot_bootstrap();
48    }
49}