Pass StorageBackend to subcommand function
This commit is contained in:
parent
3f19aba7b2
commit
18ea01b854
3 changed files with 10 additions and 5 deletions
|
@ -14,6 +14,7 @@ use clap::App;
|
|||
use module::Module;
|
||||
use module::ModuleError;
|
||||
use module::bm::BMModule;
|
||||
use storage::backend::StorageBackend;
|
||||
|
||||
mod cli;
|
||||
mod configuration;
|
||||
|
@ -43,8 +44,11 @@ fn main() {
|
|||
let commands = module.get_commands(&rt);
|
||||
if let Some(command) = matches.subcommand_name() {
|
||||
debug!("Subcommand: {}", command);
|
||||
|
||||
let backend = StorageBackend::new(rt.get_rtp());
|
||||
|
||||
match commands.get(command) {
|
||||
Some(f) => f(&rt),
|
||||
Some(f) => f(&rt, &backend),
|
||||
None => debug!("No command '{}' found", command),
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
use runtime::Runtime;
|
||||
use storage::backend::StorageBackend;
|
||||
|
||||
pub fn add_command(rt: &Runtime) {
|
||||
pub fn add_command(rt: &Runtime, backend: &StorageBackend) {
|
||||
unimplemented!()
|
||||
}
|
||||
|
||||
pub fn list_command(rt: &Runtime) {
|
||||
pub fn list_command(rt: &Runtime, backend: &StorageBackend) {
|
||||
unimplemented!()
|
||||
}
|
||||
|
||||
pub fn remove_command(rt: &Runtime) {
|
||||
pub fn remove_command(rt: &Runtime, backend: &StorageBackend) {
|
||||
unimplemented!()
|
||||
}
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ impl Display for ModuleError {
|
|||
}
|
||||
|
||||
pub type ModuleResult = Result<(), ModuleError>;
|
||||
pub type CommandMap<'a> = HashMap<&'a str, fn(&Runtime)>;
|
||||
pub type CommandMap<'a> = HashMap<&'a str, fn(&Runtime, &StorageBackend)>;
|
||||
|
||||
pub trait Module {
|
||||
|
||||
|
|
Loading…
Reference in a new issue