use schemars::JsonSchema;
use serde::Deserialize;
use summer::config::Configurable;
summer::submit_config_schema!("sqlx", SqlxConfig);
#[derive(Debug, Configurable, Clone, JsonSchema, Deserialize)]
#[config_prefix = "sqlx"]
#[allow(clippy::struct_excessive_bools)]
pub struct SqlxConfig {
pub uri: String,
#[serde(default = "default_min_connections")]
pub min_connections: u32,
#[serde(default = "default_max_connections")]
pub max_connections: u32,
pub connect_timeout: Option<u64>,
pub idle_timeout: Option<u64>,
pub acquire_timeout: Option<u64>,
}
fn default_min_connections() -> u32 {
1
}
fn default_max_connections() -> u32 {
10
}