@@ -13,7 +13,7 @@ use mithril_common::entities::{
13
13
HexEncodedGenesisVerificationKey , HexEncodedKey , ProtocolParameters , SignedEntityConfig ,
14
14
SignedEntityTypeDiscriminants ,
15
15
} ;
16
- use mithril_common:: { CardanoNetwork , StdResult } ;
16
+ use mithril_common:: { AggregateSignatureType , CardanoNetwork , StdResult } ;
17
17
use mithril_doc:: { Documenter , DocumenterDefault , StructDoc } ;
18
18
use mithril_era:: adapters:: EraReaderAdapterType ;
19
19
@@ -382,6 +382,11 @@ pub trait ConfigurationSource {
382
382
383
383
white_list
384
384
}
385
+
386
+ /// Aggregate signature type
387
+ fn aggregate_signature_type ( & self ) -> AggregateSignatureType {
388
+ panic ! ( "get_aggregate_signature_type is not implemented." ) ;
389
+ }
385
390
}
386
391
387
392
/// Serve command configuration
@@ -557,6 +562,9 @@ pub struct ServeCommandConfiguration {
557
562
/// Custom origin tag of client request added to the whitelist (comma
558
563
/// separated list).
559
564
pub custom_origin_tag_white_list : Option < String > ,
565
+
566
+ /// Aggregate signature type used to create certificates
567
+ pub aggregate_signature_type : AggregateSignatureType ,
560
568
}
561
569
562
570
/// Uploader needed to copy the snapshot once computed.
@@ -689,6 +697,7 @@ impl ServeCommandConfiguration {
689
697
persist_usage_report_interval_in_seconds : 10 ,
690
698
leader_aggregator_endpoint : None ,
691
699
custom_origin_tag_white_list : None ,
700
+ aggregate_signature_type : AggregateSignatureType :: Concatenation ,
692
701
}
693
702
}
694
703
@@ -880,6 +889,10 @@ impl ConfigurationSource for ServeCommandConfiguration {
880
889
None => self . get_local_server_url ( ) ,
881
890
}
882
891
}
892
+
893
+ fn aggregate_signature_type ( & self ) -> AggregateSignatureType {
894
+ self . aggregate_signature_type
895
+ }
883
896
}
884
897
885
898
/// Default configuration with all the default values for configurations.
@@ -955,6 +968,9 @@ pub struct DefaultConfiguration {
955
968
956
969
/// Time interval at which metrics are persisted in event database (in seconds).
957
970
pub persist_usage_report_interval_in_seconds : u64 ,
971
+
972
+ /// Aggregate signature type used to create certificates
973
+ pub aggregate_signature_type : String ,
958
974
}
959
975
960
976
impl Default for DefaultConfiguration {
@@ -986,6 +1002,7 @@ impl Default for DefaultConfiguration {
986
1002
metrics_server_ip : "0.0.0.0" . to_string ( ) ,
987
1003
metrics_server_port : 9090 ,
988
1004
persist_usage_report_interval_in_seconds : 10 ,
1005
+ aggregate_signature_type : "Concatenation" . to_string ( ) ,
989
1006
}
990
1007
}
991
1008
}
@@ -1069,6 +1086,7 @@ impl Source for DefaultConfiguration {
1069
1086
( "step" . to_string( ) , ValueKind :: from( * v. step) , )
1070
1087
] )
1071
1088
) ;
1089
+ register_config_value ! ( result, & namespace, myself. aggregate_signature_type) ;
1072
1090
Ok ( result)
1073
1091
}
1074
1092
}
0 commit comments