Expand description
Ready-to-use configuration for library consumers.
DefaultConfig implements every configuration trait
(RateLimitingProvider, ProxyProvider, FilteringProvider,
ConnectionProvider, AuthenticationProvider) with the same defaults
the CLI uses. Tweak its public fields to customize behaviour without
defining a fresh struct or implementing each trait by hand.
§Example
use std::sync::Arc;
use std::time::Duration;
use wisegate_core::{DefaultConfig, RateLimiter};
let mut config = DefaultConfig::default();
config.rate_limit.max_requests = 200;
config.rate_limit.window_duration = Duration::from_secs(30);
config.blocked_methods = vec!["TRACE".into(), "CONNECT".into()];
let _limiter = RateLimiter::new();
let _shared_config = Arc::new(config);Structs§
- Default
Config - Configuration backed by plain fields — pre-populated with WiseGate’s defaults.