39 lines
1.4 KiB
Rust
39 lines
1.4 KiB
Rust
#[derive(Clone, Debug)]
|
|
pub struct ChannelBusConfig {
|
|
pub namespace: String,
|
|
pub room_cache_ttl_hint: Option<std::time::Duration>,
|
|
pub catchup_limit: i64,
|
|
pub signing_secret: Option<String>,
|
|
pub seq_segment_size: Option<u64>,
|
|
pub rate_limit_max_requests: Option<u32>,
|
|
pub rate_limit_window_secs: Option<u64>,
|
|
pub dedup_window_secs: Option<u64>,
|
|
pub ack_timeout_secs: Option<u64>,
|
|
pub revoke_window_secs: Option<u64>,
|
|
pub circuit_breaker_failure_threshold: Option<u32>,
|
|
pub circuit_breaker_success_threshold: Option<u32>,
|
|
pub circuit_breaker_timeout_secs: Option<u64>,
|
|
pub circuit_breaker_half_open_max_calls: Option<u32>,
|
|
}
|
|
|
|
impl Default for ChannelBusConfig {
|
|
fn default() -> Self {
|
|
Self {
|
|
namespace: "/channel".to_owned(),
|
|
room_cache_ttl_hint: Some(std::time::Duration::from_secs(300)),
|
|
catchup_limit: 100,
|
|
signing_secret: None,
|
|
seq_segment_size: None,
|
|
rate_limit_max_requests: None,
|
|
rate_limit_window_secs: None,
|
|
dedup_window_secs: None,
|
|
ack_timeout_secs: None,
|
|
revoke_window_secs: None,
|
|
circuit_breaker_failure_threshold: None,
|
|
circuit_breaker_success_threshold: None,
|
|
circuit_breaker_timeout_secs: None,
|
|
circuit_breaker_half_open_max_calls: None,
|
|
}
|
|
}
|
|
}
|