pub struct ConfigManager { /* private fields */ }Expand description
Configuration manager with hot-reload support
Implementations§
Source§impl ConfigManager
impl ConfigManager
Sourcepub fn load_from_file<P: AsRef<Path>>(
&mut self,
path: P,
) -> Result<(), ConfigError>
pub fn load_from_file<P: AsRef<Path>>( &mut self, path: P, ) -> Result<(), ConfigError>
Load configuration from file
Sourcepub fn load_from_env(&mut self) -> Result<(), ConfigError>
pub fn load_from_env(&mut self) -> Result<(), ConfigError>
Load configuration from environment variables
Sourcepub fn get_config(&self) -> &AppConfig
pub fn get_config(&self) -> &AppConfig
Get current configuration
Sourcepub fn set_value(&mut self, key: &str, value: Value) -> Result<(), ConfigError>
pub fn set_value(&mut self, key: &str, value: Value) -> Result<(), ConfigError>
Update configuration value
Sourcepub fn add_environment(&mut self, name: String, env_config: EnvironmentConfig)
pub fn add_environment(&mut self, name: String, env_config: EnvironmentConfig)
Add environment configuration
Sourcepub fn switch_environment(&mut self, env_name: &str) -> Result<(), ConfigError>
pub fn switch_environment(&mut self, env_name: &str) -> Result<(), ConfigError>
Switch to specific environment
Sourcepub fn add_watcher(&mut self, watcher: Box<dyn ConfigWatcher>)
pub fn add_watcher(&mut self, watcher: Box<dyn ConfigWatcher>)
Add configuration watcher
Sourcepub fn save_to_file<P: AsRef<Path>>(&self, path: P) -> Result<(), ConfigError>
pub fn save_to_file<P: AsRef<Path>>(&self, path: P) -> Result<(), ConfigError>
Save current configuration to file
Sourcepub fn reload(&mut self) -> Result<(), ConfigError>
pub fn reload(&mut self) -> Result<(), ConfigError>
Reload configuration from file
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ConfigManager
impl !RefUnwindSafe for ConfigManager
impl Send for ConfigManager
impl Sync for ConfigManager
impl Unpin for ConfigManager
impl !UnwindSafe for ConfigManager
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more