hopr_transport_protocol/heartbeat/
config.rs

1use std::time::Duration;
2
3use serde::{Deserialize, Serialize};
4use serde_with::{serde_as, DurationSeconds};
5use validator::Validate;
6
7/// Configuration for the `heartbeat` protocol.
8#[serde_as]
9#[derive(Debug, Copy, Clone, smart_default::SmartDefault, Validate, Serialize, Deserialize, Eq, PartialEq)]
10pub struct HeartbeatProtocolConfig {
11    /// Maximum duration before the request times out
12    #[serde_as(as = "DurationSeconds<u64>")]
13    #[default(Duration::from_secs(6))]
14    pub timeout: Duration,
15}