@@ -392,13 +392,19 @@ pub(crate) mod dumb {
392392 epoch_settings : RwLock < Option < SignerEpochSettings > > ,
393393 last_registered_signer : RwLock < Option < Signer > > ,
394394 aggregator_features : RwLock < AggregatorFeaturesMessage > ,
395+ total_registered_signers : RwLock < u32 > ,
395396 }
396397
397398 impl DumbAggregatorClient {
398399 /// Return the last signer that called with the `register` method.
399400 pub async fn get_last_registered_signer ( & self ) -> Option < Signer > {
400401 self . last_registered_signer . read ( ) . await . clone ( )
401402 }
403+
404+ /// Return the total number of signers that called with the `register` method.
405+ pub async fn get_total_registered_signers ( & self ) -> u32 {
406+ * self . total_registered_signers . read ( ) . await
407+ }
402408 }
403409
404410 impl Default for DumbAggregatorClient {
@@ -407,6 +413,7 @@ pub(crate) mod dumb {
407413 epoch_settings : RwLock :: new ( Some ( SignerEpochSettings :: dummy ( ) ) ) ,
408414 last_registered_signer : RwLock :: new ( None ) ,
409415 aggregator_features : RwLock :: new ( AggregatorFeaturesMessage :: dummy ( ) ) ,
416+ total_registered_signers : RwLock :: new ( 0 ) ,
410417 }
411418 }
412419 }
@@ -431,6 +438,9 @@ pub(crate) mod dumb {
431438 let signer = signer. clone ( ) ;
432439 * last_registered_signer = Some ( signer) ;
433440
441+ let mut total_registered_signers = self . total_registered_signers . write ( ) . await ;
442+ * total_registered_signers += 1 ;
443+
434444 Ok ( ( ) )
435445 }
436446
0 commit comments