embedded_td/config/
state_sync.rs1use time::Duration;
2
3use super::define_build_mode_setter;
4
5#[derive(Debug, Clone)]
6pub struct StateSyncConfig {
7 pub rpc_servers: Vec<String>,
14 pub trust_height: u64,
15 pub trust_hash: String,
16 pub trust_period: Duration,
17
18 pub discovery_time: Duration,
20
21 pub chunk_request_timeout: Duration,
24
25 pub chunk_fetchers: u64,
27}
28
29impl Default for StateSyncConfig {
30 fn default() -> Self {
31 Self {
32 rpc_servers: Default::default(),
33 trust_height: 0,
34 trust_hash: Default::default(),
35 trust_period: Duration::hours(168),
36 discovery_time: Duration::new(15, 0),
37 chunk_request_timeout: Duration::new(10, 0),
38 chunk_fetchers: 4,
39 }
40 }
41}
42
43impl StateSyncConfig {
44 define_build_mode_setter!(rpc_servers, Vec<String>);
45
46 define_build_mode_setter!(trust_height, u64);
47
48 define_build_mode_setter!(trust_hash, str);
49
50 define_build_mode_setter!(trust_period, Duration);
51
52 define_build_mode_setter!(discovery_time, Duration);
53
54 define_build_mode_setter!(chunk_request_timeout, Duration);
55
56 define_build_mode_setter!(chunk_fetchers, u64);
57}