Trait cubist_localchains::provider::Provider
source · pub trait Provider {
fn name(&self) -> &str;
fn bootstrap_eta(&self) -> Duration;
fn url(&self) -> SecretUrl;
fn preflight(&self) -> Result<Vec<&Downloadable>>;
fn credentials(&self) -> Vec<CredConfig> ⓘ;
fn start<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Server>>> + Send + 'async_trait>>
where
Self: 'async_trait,
'life0: 'async_trait;
}
Required Methods§
sourcefn name(&self) -> &str
fn name(&self) -> &str
The name of the provider, used for printing info Note, this really should be an associated constant but Rust doesn’t allow that (yet)
sourcefn bootstrap_eta(&self) -> Duration
fn bootstrap_eta(&self) -> Duration
How long it typically takes to bootstrap
sourcefn preflight(&self) -> Result<Vec<&Downloadable>>
fn preflight(&self) -> Result<Vec<&Downloadable>>
Do any system checking: do we have the binary we need, is it possible to get it, etc.
An error is considered unrecoverable while a success can indicate work to be done
sourcefn credentials(&self) -> Vec<CredConfig> ⓘ
fn credentials(&self) -> Vec<CredConfig> ⓘ
Credentials used to configure wallets