use crate::impl_base_entity_single;
use crate::rubase::rudto::rucfgdto::{databasedto, redisdto, softwaredto};
use crate::rubase::ruentity;
use serde::{Deserialize, Serialize};
use std::fmt::Display;
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct ConfigDto {
pub redis: redisdto::RedisDto,
pub software: softwaredto::SoftwareDto,
pub gorm: databasedto::Gorm,
pub datasource: databasedto::DataSource,
}
impl ruentity::BaseEntitySingle for ConfigDto {}
impl ConfigDto {
pub fn new() -> ConfigDto {
Self {
redis: redisdto::RedisDto::default(),
software: softwaredto::SoftwareDto::default(),
gorm: databasedto::Gorm::new(),
datasource: databasedto::DataSource::new(),
}
}
pub fn parse_env_var(&mut self) {
self.redis.parse_env_var();
self.software.parse_env_var();
self.gorm.parse_env_var();
self.datasource.parse_env_var();
}
}