bft_bench_core/
config.rs

1use std::time::Duration;
2
3use serde_derive::{Deserialize, Serialize};
4
5#[derive(Default, Debug, Serialize, Deserialize)]
6pub struct Config {
7    pub run_duration: Duration,
8    pub report_interval: Option<Duration>,
9    pub write_interval: Duration,
10    pub read_grace: Duration,
11    pub transaction_size: usize,
12    pub nodes: Vec<Node>,
13}
14
15#[derive(Debug, Serialize, Deserialize)]
16pub enum Node {
17    Write(WriteNode),
18    ReadWrite(ReadWriteNode),
19}
20
21#[derive(Debug, Serialize, Deserialize)]
22pub struct ReadWriteNode {
23    pub node: WriteNode,
24}
25
26#[derive(Debug, Serialize, Deserialize)]
27pub struct WriteNode {
28    pub endpoint: NodeEndpoint,
29}
30
31#[derive(Default, Debug, Serialize, Deserialize, PartialEq, Eq, Hash)]
32pub struct NodeEndpoint {
33    pub host: String,
34    pub port: u16,
35}