Skip to main content

ic_query/nns/node/report/
mod.rs

1#[cfg(feature = "host")]
2mod build;
3#[cfg(feature = "host")]
4mod cache;
5#[cfg(feature = "host")]
6mod filters;
7mod model;
8#[cfg(feature = "host")]
9mod refresh;
10#[cfg(feature = "host")]
11mod resolve;
12#[cfg(feature = "host")]
13mod source;
14mod text;
15
16#[cfg(all(test, feature = "host"))]
17use build::build_nns_node_list_report_with_source;
18#[cfg(feature = "host")]
19pub use build::{build_nns_node_info_report, build_nns_node_list_report};
20#[cfg(feature = "host")]
21pub use cache::{nns_node_cache_path, nns_node_refresh_lock_path};
22#[cfg(all(test, feature = "host"))]
23use filters::filter_node_list_report;
24#[cfg(feature = "host")]
25pub use refresh::refresh_nns_node_report;
26#[cfg(all(test, feature = "host"))]
27use resolve::resolve_node;
28#[cfg(all(test, feature = "host"))]
29use source::NnsNodeSource;
30
31#[cfg(all(test, feature = "host"))]
32use crate::ic_registry::{MainnetNodeList, MainnetRegistryFetchRequest};
33
34pub use model::{
35    NnsNodeCacheRequest, NnsNodeInfoReport, NnsNodeInfoRequest, NnsNodeListFilters,
36    NnsNodeListReport, NnsNodeListRequest, NnsNodeRow,
37};
38#[cfg(feature = "host")]
39pub use model::{NnsNodeHostError, NnsNodeRefreshReport, NnsNodeRefreshRequest};
40#[cfg(feature = "host")]
41pub use text::nns_node_refresh_report_text;
42pub use text::{
43    nns_node_info_report_text, nns_node_list_report_text, nns_node_list_report_verbose_text,
44};
45
46pub const DEFAULT_NNS_NODE_SOURCE_ENDPOINT: &str = "https://icp-api.io";
47#[cfg(feature = "host")]
48pub const DEFAULT_NODE_REFRESH_LOCK_STALE_SECONDS: u64 = 30 * 60;
49#[cfg(feature = "host")]
50pub const NNS_NODE_LIST_REPORT_SCHEMA_VERSION: u32 = 1;
51#[cfg(feature = "host")]
52pub const NNS_NODE_INFO_REPORT_SCHEMA_VERSION: u32 = 1;
53#[cfg(feature = "host")]
54pub const NNS_NODE_REFRESH_REPORT_SCHEMA_VERSION: u32 = 1;
55pub const NNS_NODE_SUBNET_KIND_APPLICATION: &str = "application";
56pub const NNS_NODE_SUBNET_KIND_CLOUD_ENGINE: &str = "cloud_engine";
57pub const NNS_NODE_SUBNET_KIND_SYSTEM: &str = "system";
58pub const NNS_NODE_SUBNET_KIND_UNKNOWN: &str = "unknown";
59#[cfg(feature = "host")]
60const NNS_NODE_CACHE_DIR: &str = "node";
61#[cfg(feature = "host")]
62const NNS_NODE_CACHE_FILE: &str = "nodes.json";
63
64#[cfg(feature = "host")]
65impl_nns_mainnet_network_enforcer!(NnsNodeHostError);
66
67#[cfg(all(test, feature = "host"))]
68mod tests;