use crate::core::auth0::cookie_session::CookieSessionSettings;
#[derive(Clone, serde::Deserialize)]
pub struct Settings {
pub server_name: String,
pub application_port: usize,
pub protocal: String,
pub https_cert: String,
pub https_key: String,
pub backlog_size: u32,
pub worker_count: usize,
pub keepalive_time: u64,
pub use_developer: bool,
pub resousrce_folder: String,
pub logger: Option<crate::core::logger::LoggerSettings>,
pub cookie_session: Option<CookieSessionSettings>,
pub rudis: Option<crate::core::rudis::Settings>,
pub nats: Option<crate::core::natss::Settings>,
pub kafka: Option<crate::core::kafka::KafkaSettings>,
pub mongodb: Option<crate::core::mongo::MongoSettings>,
pub mysql: Option<crate::core::mysql::MysqlSettings>,
pub elasticsearch: Option<crate::core::elasticsearch::ElasticsearchSettings>,
pub zookeeper: Option<crate::core::zookeeper::ZookeeperSettings>,
pub upstreams: Option<Vec<UpStreams>>,
}
#[derive(serde::Deserialize, Clone, Debug)]
pub struct UpStreams {
pub location: String,
pub enable: Option<bool>,
pub rewrite: Option<bool>,
pub servers: Vec<String>,
}