Skip to main content

ic_query/nns/node_provider/report/model/
request.rs

1use std::path::PathBuf;
2
3///
4/// NnsNodeProviderCacheRequest
5///
6#[derive(Clone, Debug, Eq, PartialEq)]
7pub struct NnsNodeProviderCacheRequest {
8    pub icp_root: PathBuf,
9    pub network: String,
10}
11
12///
13/// NnsNodeProviderListRequest
14///
15#[derive(Clone, Debug, Eq, PartialEq)]
16pub struct NnsNodeProviderListRequest {
17    pub cache: NnsNodeProviderCacheRequest,
18    pub source_endpoint: String,
19    pub now_unix_secs: u64,
20}
21
22///
23/// NnsNodeProviderInfoRequest
24///
25#[derive(Clone, Debug, Eq, PartialEq)]
26pub struct NnsNodeProviderInfoRequest {
27    pub cache: NnsNodeProviderCacheRequest,
28    pub source_endpoint: String,
29    pub input: String,
30    pub now_unix_secs: u64,
31}
32
33///
34/// NnsNodeProviderRefreshRequest
35///
36#[cfg(feature = "host")]
37#[derive(Clone, Debug, Eq, PartialEq)]
38pub struct NnsNodeProviderRefreshRequest {
39    pub cache: NnsNodeProviderCacheRequest,
40    pub source_endpoint: String,
41    pub now_unix_secs: u64,
42    pub lock_stale_after_seconds: u64,
43    pub dry_run: bool,
44    pub output_path: Option<PathBuf>,
45}
46
47#[cfg(feature = "host")]
48impl_nns_leaf_cache_and_refresh_requests!(
49    NnsNodeProviderCacheRequest,
50    NnsNodeProviderRefreshRequest
51);