canic_core/api/
metadata.rs1use crate::dto::metadata::CanicMetadataResponse;
8
9const CANISTER_NAME: &str = env!("CARGO_PKG_NAME");
10const CANISTER_VERSION: &str = env!("CARGO_PKG_VERSION");
11const CANISTER_DESCRIPTION: &str = env!("CARGO_PKG_DESCRIPTION");
12
13pub struct CanicMetadataApi;
20
21impl CanicMetadataApi {
22 #[must_use]
24 pub fn metadata(canister_version: u64) -> CanicMetadataResponse {
25 Self::metadata_for(
26 CANISTER_NAME,
27 CANISTER_VERSION,
28 CANISTER_DESCRIPTION,
29 CANISTER_VERSION,
30 canister_version,
31 )
32 }
33
34 #[must_use]
36 pub fn metadata_for(
37 package_name: &str,
38 package_version: &str,
39 package_description: &str,
40 canic_version: &str,
41 canister_version: u64,
42 ) -> CanicMetadataResponse {
43 CanicMetadataResponse {
44 package_name: package_name.to_string(),
45 package_version: package_version.to_string(),
46 package_description: package_description.to_string(),
47 canic_version: canic_version.to_string(),
48 canister_version,
49 }
50 }
51}