mithril_signer/services/signer_registration/retriever/
http.rs1use mithril_aggregator_client::{AggregatorHttpClient, query::GetEpochSettingsQuery};
2use mithril_common::{StdResult, messages::TryFromMessageAdapter};
3
4use crate::services::SignersRegistrationRetriever;
5use crate::{FromEpochSettingsAdapter, RegisteredSigners};
6
7#[async_trait::async_trait]
8impl SignersRegistrationRetriever for AggregatorHttpClient {
9 async fn retrieve_all_signer_registrations(&self) -> StdResult<Option<RegisteredSigners>> {
10 let message = self.send(GetEpochSettingsQuery::current()).await?;
11 let epoch_settings = FromEpochSettingsAdapter::try_adapt(message)?;
12
13 Ok(Some(epoch_settings))
14 }
15}