node/daemon_json/
json_daemon.rs1use ledger::scan_state::currency::Slot;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct Daemon {
6 txpool_max_size: Option<usize>,
7 peer_list_url: Option<String>,
8 slot_tx_end: Option<u32>,
9 slot_chain_end: Option<u32>,
10}
11
12impl Daemon {
13 pub const DEFAULT: Daemon = Daemon {
14 txpool_max_size: Some(3000),
15 peer_list_url: None,
16 slot_tx_end: None,
17 slot_chain_end: None,
18 };
19
20 pub fn tx_pool_max_size(&self) -> usize {
21 self.txpool_max_size
22 .unwrap_or(Self::DEFAULT.txpool_max_size.unwrap())
23 }
24
25 pub fn peer_list_url(&self) -> Option<String> {
26 self.peer_list_url.clone()
27 }
28
29 pub fn slot_tx_end(&self) -> Option<Slot> {
30 self.slot_tx_end.map(Slot::from_u32)
31 }
32
33 pub fn slot_chain_end(&self) -> Option<Slot> {
34 self.slot_chain_end.map(Slot::from_u32)
35 }
36}