use std::path::PathBuf;
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct NnsNodeProviderCacheRequest {
pub icp_root: PathBuf,
pub network: String,
}
impl NnsNodeProviderCacheRequest {
#[must_use]
pub fn new(icp_root: impl Into<PathBuf>, network: impl Into<String>) -> Self {
Self {
icp_root: icp_root.into(),
network: network.into(),
}
}
}
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct NnsNodeProviderListRequest {
pub cache: NnsNodeProviderCacheRequest,
pub source_endpoint: String,
pub now_unix_secs: u64,
}
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct NnsNodeProviderInfoRequest {
pub cache: NnsNodeProviderCacheRequest,
pub source_endpoint: String,
pub input: String,
pub now_unix_secs: u64,
}
#[cfg(feature = "host")]
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct NnsNodeProviderRefreshRequest {
pub cache: NnsNodeProviderCacheRequest,
pub source_endpoint: String,
pub now_unix_secs: u64,
pub lock_stale_after_seconds: u64,
pub dry_run: bool,
pub output_path: Option<PathBuf>,
}
#[cfg(feature = "host")]
impl_nns_leaf_cache_and_refresh_requests!(
NnsNodeProviderCacheRequest,
NnsNodeProviderRefreshRequest
);