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 init_nonroot_canister_before_bootstrap_with_attestation_cache(
29        role: CanisterRole,
30        payload: CanisterInitPayload,
31        config: ConfigModel,
32        config_source: &str,
33        config_path: &str,
34    ) {
35        lifecycle::init::nonroot::init_nonroot_canister_before_bootstrap_with_attestation_cache(
36            role,
37            payload,
38            config,
39            config_source,
40            config_path,
41        );
42    }
43
44    pub fn schedule_init_nonroot_bootstrap(args: Option<Vec<u8>>) {
45        lifecycle::init::nonroot::schedule_init_nonroot_bootstrap(args);
46    }
47
48    pub fn post_upgrade_nonroot_canister_before_bootstrap(
49        role: CanisterRole,
50        config: ConfigModel,
51        config_source: &str,
52        config_path: &str,
53    ) {
54        lifecycle::upgrade::nonroot::post_upgrade_nonroot_canister_before_bootstrap(
55            role,
56            config,
57            config_source,
58            config_path,
59        );
60    }
61
62    pub fn post_upgrade_nonroot_canister_before_bootstrap_with_attestation_cache(
63        role: CanisterRole,
64        config: ConfigModel,
65        config_source: &str,
66        config_path: &str,
67    ) {
68        lifecycle::upgrade::nonroot::post_upgrade_nonroot_canister_before_bootstrap_with_attestation_cache(
69            role,
70            config,
71            config_source,
72            config_path,
73        );
74    }
75
76    pub fn schedule_post_upgrade_nonroot_bootstrap() {
77        lifecycle::upgrade::nonroot::schedule_post_upgrade_nonroot_bootstrap();
78    }
79}