Skip to content

Commit afd8865

Browse files
committed
Rename ProductionDependenciesBuilder to DependenciesBuilder
And remove the trait of the same name. The idea behind the `DependenciesBuilder` trait was to define a common api to build dependencies, but two years after its introduction it only have one implementor.
1 parent a96b950 commit afd8865

File tree

3 files changed

+12
-23
lines changed

3 files changed

+12
-23
lines changed

mithril-signer/src/dependency_injection/builder.rs

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ use std::sync::Arc;
33
use std::time::Duration;
44

55
use anyhow::{anyhow, Context};
6-
use async_trait::async_trait;
76
use tokio::sync::Mutex;
87

98
use mithril_common::api_version::APIVersionProvider;
@@ -50,30 +49,23 @@ use crate::{
5049
/// The `DependenciesBuilder` is intended to manage Services instance creation.
5150
///
5251
/// The goal of this is to put all this code out of the way of business code.
53-
#[async_trait]
54-
pub trait DependenciesBuilder {
55-
/// Create a SignerService instance.
56-
async fn build(&self) -> StdResult<SignerDependencyContainer>;
57-
}
58-
59-
/// A `DependenciesBuilder` for Production environment.
60-
pub struct ProductionDependenciesBuilder<'a> {
52+
pub struct DependenciesBuilder<'a> {
6153
config: &'a Configuration,
6254
chain_observer_builder: fn(&Configuration) -> StdResult<Arc<dyn ChainObserver>>,
6355
immutable_file_observer_builder:
6456
fn(&Configuration) -> StdResult<Arc<dyn ImmutableFileObserver>>,
6557
}
6658

67-
impl<'a> ProductionDependenciesBuilder<'a> {
68-
/// Create a new `ProductionDependenciesBuilder`.
59+
impl<'a> DependenciesBuilder<'a> {
60+
/// Create a new `DependenciesBuilder`.
6961
pub fn new(config: &'a Configuration) -> Self {
7062
let chain_observer_builder: fn(&Configuration) -> StdResult<Arc<dyn ChainObserver>> =
7163
|config: &Configuration| {
7264
let chain_observer_type = ChainObserverType::Pallas;
7365
let cardano_cli_path = &config.cardano_cli_path;
7466
let cardano_node_socket_path = &config.cardano_node_socket_path;
7567
let cardano_network = &config.get_network().with_context(|| {
76-
"Production Dependencies Builder can not get Cardano network while building the chain observer"
68+
"Dependencies Builder can not get Cardano network while building the chain observer"
7769
})?;
7870
let cardano_cli_runner = &CardanoCliRunner::new(
7971
cardano_cli_path.to_owned(),
@@ -183,12 +175,9 @@ impl<'a> ProductionDependenciesBuilder<'a> {
183175

184176
Ok(connection)
185177
}
186-
}
187178

188-
#[async_trait]
189-
impl<'a> DependenciesBuilder for ProductionDependenciesBuilder<'a> {
190179
/// Build dependencies for the Production environment.
191-
async fn build(&self) -> StdResult<SignerDependencyContainer> {
180+
pub async fn build(&self) -> StdResult<SignerDependencyContainer> {
192181
if !self.config.data_stores_directory.exists() {
193182
fs::create_dir_all(self.config.data_stores_directory.clone()).with_context(|| {
194183
format!(
@@ -404,7 +393,7 @@ mod tests {
404393
-> StdResult<Arc<dyn ImmutableFileObserver>> =
405394
|_config: &Configuration| Ok(Arc::new(DumbImmutableFileObserver::default()));
406395

407-
let mut dependencies_builder = ProductionDependenciesBuilder::new(&config);
396+
let mut dependencies_builder = DependenciesBuilder::new(&config);
408397
dependencies_builder
409398
.override_chain_observer_builder(chain_observer_builder)
410399
.override_immutable_file_observer_builder(immutable_file_observer_builder)

mithril-signer/src/main.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use tokio::{
1515

1616
use mithril_common::StdResult;
1717
use mithril_doc::{Documenter, DocumenterDefault, GenerateDocCommands, StructDoc};
18-
use mithril_signer::dependency_injection::{DependenciesBuilder, ProductionDependenciesBuilder};
18+
use mithril_signer::dependency_injection::DependenciesBuilder;
1919
use mithril_signer::{
2020
Configuration, DefaultConfiguration, MetricsServer, SignerRunner, SignerState, StateMachine,
2121
};
@@ -158,7 +158,7 @@ async fn main() -> StdResult<()> {
158158
.try_deserialize()
159159
.with_context(|| "configuration deserialize error")?;
160160

161-
let services = ProductionDependenciesBuilder::new(&config)
161+
let services = DependenciesBuilder::new(&config)
162162
.build()
163163
.await
164164
.with_context(|| "services initialization error")?;

mithril-signer/tests/test_extensions/state_machine_tester.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ use mithril_persistence::{
3434
store::{StakeStore, StakeStorer},
3535
};
3636
use mithril_signer::{
37-
dependency_injection::{ProductionDependenciesBuilder, SignerDependencyContainer},
37+
dependency_injection::{DependenciesBuilder, SignerDependencyContainer},
3838
metrics::*,
3939
services::{
4040
AggregatorClient, CardanoTransactionsImporter, MithrilSingleSigner, SignerUpkeepService,
@@ -97,17 +97,17 @@ impl StateMachineTester {
9797
let selected_signer_party_id = selected_signer_with_stake.party_id.clone();
9898
let config = Configuration::new_sample(&selected_signer_party_id);
9999

100-
let production_dependencies_builder = ProductionDependenciesBuilder::new(&config);
100+
let dependencies_builder = DependenciesBuilder::new(&config);
101101
let sqlite_connection = Arc::new(
102-
production_dependencies_builder
102+
dependencies_builder
103103
.build_sqlite_connection(
104104
":memory:",
105105
mithril_signer::database::migration::get_migrations(),
106106
)
107107
.await
108108
.unwrap(),
109109
);
110-
let transaction_sqlite_connection = production_dependencies_builder
110+
let transaction_sqlite_connection = dependencies_builder
111111
.build_sqlite_connection(
112112
":memory:",
113113
mithril_persistence::database::cardano_transaction_migration::get_migrations(),

0 commit comments

Comments
 (0)