dfx_core/network/
root_key.rs1use crate::{
2 config::model::network_descriptor::NetworkDescriptor, error::root_key::FetchRootKeyError,
3};
4use ic_agent::Agent;
5
6#[deprecated(note = "use fetch_root_key_when_non_mainnet() instead")]
7pub async fn fetch_root_key_when_local(
8 agent: &Agent,
9 network: &NetworkDescriptor,
10) -> Result<(), FetchRootKeyError> {
11 fetch_root_key_when_non_mainnet(agent, network).await
12}
13
14pub async fn fetch_root_key_when_non_mainnet(
15 agent: &Agent,
16 network: &NetworkDescriptor,
17) -> Result<(), FetchRootKeyError> {
18 if !network.is_ic {
19 agent
20 .fetch_root_key()
21 .await
22 .map_err(FetchRootKeyError::AgentError)?;
23 }
24 Ok(())
25}
26
27#[deprecated(note = "use fetch_root_key_when_non_mainnet_or_error() instead")]
28pub async fn fetch_root_key_when_local_or_error(
29 agent: &Agent,
30 network: &NetworkDescriptor,
31) -> Result<(), FetchRootKeyError> {
32 fetch_root_key_when_non_mainnet_or_error(agent, network).await
33}
34
35pub async fn fetch_root_key_when_non_mainnet_or_error(
36 agent: &Agent,
37 network: &NetworkDescriptor,
38) -> Result<(), FetchRootKeyError> {
39 if !network.is_ic {
40 agent
41 .fetch_root_key()
42 .await
43 .map_err(FetchRootKeyError::AgentError)
44 } else {
45 Err(FetchRootKeyError::MustNotFetchRootKeyOnMainnet)
46 }
47}