Trait SzConfigManager

Source
pub trait SzConfigManager {
    // Required methods
    fn create_config(&self) -> SzResult<Box<dyn SzConfig>>;
    fn create_config_from_id(
        &self,
        config_id: ConfigId,
    ) -> SzResult<Box<dyn SzConfig>>;
    fn create_config_from_definition(
        &self,
        config_definition: &str,
    ) -> SzResult<Box<dyn SzConfig>>;
    fn get_config_registry(&self) -> SzResult<JsonString>;
    fn get_default_config_id(&self) -> SzResult<ConfigId>;
    fn register_config(
        &self,
        config_definition: &str,
        config_comment: Option<&str>,
    ) -> SzResult<ConfigId>;
    fn replace_default_config_id(
        &self,
        current_default_config_id: ConfigId,
        new_default_config_id: ConfigId,
    ) -> SzResult<()>;
    fn set_default_config(
        &self,
        config_definition: &str,
        config_comment: Option<&str>,
    ) -> SzResult<ConfigId>;
    fn set_default_config_id(&self, config_id: ConfigId) -> SzResult<()>;
}
Expand description

Configuration lifecycle management

The SzConfigManager trait provides methods for managing configuration versions, registration, and deployment.

Required Methods§

Source

fn create_config(&self) -> SzResult<Box<dyn SzConfig>>

Creates a new configuration instance

Source

fn create_config_from_id( &self, config_id: ConfigId, ) -> SzResult<Box<dyn SzConfig>>

Creates a configuration from an existing configuration ID

Source

fn create_config_from_definition( &self, config_definition: &str, ) -> SzResult<Box<dyn SzConfig>>

Creates a configuration from a JSON definition

Source

fn get_config_registry(&self) -> SzResult<JsonString>

Gets the configuration registry

Source

fn get_default_config_id(&self) -> SzResult<ConfigId>

Gets the default configuration ID

Source

fn register_config( &self, config_definition: &str, config_comment: Option<&str>, ) -> SzResult<ConfigId>

Registers a new configuration

Source

fn replace_default_config_id( &self, current_default_config_id: ConfigId, new_default_config_id: ConfigId, ) -> SzResult<()>

Replaces the default configuration ID

Source

fn set_default_config( &self, config_definition: &str, config_comment: Option<&str>, ) -> SzResult<ConfigId>

Sets a new default configuration from definition

Source

fn set_default_config_id(&self, config_id: ConfigId) -> SzResult<()>

Sets the default configuration ID

Implementors§