pub trait ContextManager {
// Required methods
fn default_context_name(&self) -> Result<String>;
fn set_default_context(&self, name: &str) -> Result<()>;
fn save_context(&self, ctx: &WashContext) -> Result<()>;
fn delete_context(&self, name: &str) -> Result<()>;
fn load_default_context(&self) -> Result<WashContext>;
fn load_context(&self, name: &str) -> Result<WashContext>;
fn list_contexts(&self) -> Result<Vec<String>>;
}
Expand description
A trait that can be implemented by any type that wants to load, save, and otherwise manage wash contexts (e.g. from a database or a config store
Required Methods§
Sourcefn default_context_name(&self) -> Result<String>
fn default_context_name(&self) -> Result<String>
Returns the name of the currently set default context.
Sourcefn set_default_context(&self, name: &str) -> Result<()>
fn set_default_context(&self, name: &str) -> Result<()>
Sets the current default context to the given name. Should error if it doesn’t exist
Sourcefn save_context(&self, ctx: &WashContext) -> Result<()>
fn save_context(&self, ctx: &WashContext) -> Result<()>
Saves the given context
Sourcefn delete_context(&self, name: &str) -> Result<()>
fn delete_context(&self, name: &str) -> Result<()>
Deletes named context. If this context is the current default context, the default context should be unset
Sourcefn load_default_context(&self) -> Result<WashContext>
fn load_default_context(&self) -> Result<WashContext>
Loads the currently set default context
Sourcefn load_context(&self, name: &str) -> Result<WashContext>
fn load_context(&self, name: &str) -> Result<WashContext>
Loads the named context
Sourcefn list_contexts(&self) -> Result<Vec<String>>
fn list_contexts(&self) -> Result<Vec<String>>
Returns a list of all context names