Skip to content

Commit 01b56b5

Browse files
committed
Add Era checker dependency in signer
1 parent a121ba1 commit 01b56b5

File tree

3 files changed

+20
-3
lines changed

3 files changed

+20
-3
lines changed

mithril-signer/src/runtime/runner.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -438,6 +438,7 @@ mod tests {
438438
crypto_helper::ProtocolInitializer,
439439
digesters::{DumbImmutableDigester, DumbImmutableFileObserver},
440440
entities::{Epoch, StakeDistribution},
441+
era::{EraChecker, SupportedEra},
441442
store::{
442443
adapter::{DumbStoreAdapter, MemoryAdapter},
443444
StakeStore, StakeStorer,
@@ -469,6 +470,7 @@ mod tests {
469470
fn init_services() -> SignerServices {
470471
let adapter: MemoryAdapter<Epoch, ProtocolInitializer> = MemoryAdapter::new(None).unwrap();
471472
let chain_observer = Arc::new(FakeObserver::default());
473+
let era_checker = Arc::new(EraChecker::new(SupportedEra::dummy()));
472474
SignerServices {
473475
stake_store: Arc::new(StakeStore::new(Box::new(DumbStoreAdapter::new()), None)),
474476
certificate_handler: Arc::new(DumbCertificateHandler::default()),
@@ -484,6 +486,7 @@ mod tests {
484486
Box::new(adapter),
485487
None,
486488
)),
489+
era_checker,
487490
}
488491
}
489492

mithril-signer/src/runtime/signer_services.rs

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,20 @@ use std::{
55
sync::Arc,
66
};
77

8-
use mithril_common::digesters::cache::{
9-
ImmutableFileDigestCacheProvider, JsonImmutableFileDigestCacheProviderBuilder,
10-
};
118
use mithril_common::{
129
chain_observer::{CardanoCliChainObserver, CardanoCliRunner, ChainObserver},
1310
crypto_helper::{OpCert, ProtocolPartyId, SerDeShelleyFileFormat},
1411
digesters::{CardanoImmutableDigester, ImmutableDigester, ImmutableFileSystemObserver},
12+
era::EraChecker,
1513
store::{adapter::SQLiteAdapter, StakeStore},
1614
BeaconProvider, BeaconProviderImpl,
1715
};
16+
use mithril_common::{
17+
digesters::cache::{
18+
ImmutableFileDigestCacheProvider, JsonImmutableFileDigestCacheProviderBuilder,
19+
},
20+
era::SupportedEra,
21+
};
1822

1923
use crate::{
2024
certificate_handler::CertificateHandler, single_signer::SingleSigner,
@@ -128,6 +132,9 @@ impl<'a> ServiceBuilder for ProductionServiceBuilder<'a> {
128132
Arc::new(ImmutableFileSystemObserver::new(&self.config.db_directory)),
129133
self.config.get_network()?.to_owned(),
130134
));
135+
// TODO: use EraReader when it is implemented to retrieve current era
136+
let current_era = SupportedEra::Thales;
137+
let era_checker = Arc::new(EraChecker::new(current_era));
131138

132139
let services = SignerServices {
133140
beacon_provider,
@@ -137,6 +144,7 @@ impl<'a> ServiceBuilder for ProductionServiceBuilder<'a> {
137144
single_signer,
138145
stake_store,
139146
protocol_initializer_store,
147+
era_checker,
140148
};
141149

142150
Ok(services)
@@ -165,6 +173,9 @@ pub struct SignerServices {
165173

166174
/// ProtocolInitializer store
167175
pub protocol_initializer_store: ProtocolInitializerStoreService,
176+
177+
/// Era checker service
178+
pub era_checker: Arc<EraChecker>,
168179
}
169180

170181
#[cfg(test)]

mithril-signer/tests/test_extensions/state_machine_tester.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use mithril_common::digesters::ImmutableFileObserver;
22
use mithril_common::entities::SignerWithStake;
3+
use mithril_common::era::{EraChecker, SupportedEra};
34
use slog::Drain;
45
use slog_scope::debug;
56
use std::error::Error as StdError;
@@ -104,6 +105,7 @@ impl StateMachineTester {
104105
Box::new(MemoryAdapter::new(None).unwrap()),
105106
config.store_retention_limit,
106107
));
108+
let era_checker = Arc::new(EraChecker::new(SupportedEra::dummy()));
107109

108110
let services = SignerServices {
109111
certificate_handler: certificate_handler.clone(),
@@ -113,6 +115,7 @@ impl StateMachineTester {
113115
protocol_initializer_store: protocol_initializer_store.clone(),
114116
single_signer: single_signer.clone(),
115117
stake_store: stake_store.clone(),
118+
era_checker,
116119
};
117120
// set up stake distribution
118121
chain_observer

0 commit comments

Comments
 (0)