From 442f20dda382c041345f788b118dc3af5b24df67 Mon Sep 17 00:00:00 2001 From: Andrew Phillips Date: Wed, 27 Aug 2025 14:01:18 -0300 Subject: [PATCH] refactor: merge get_meta_plugin_with_config into get_meta_plugin Co-authored-by: aider (openai/andrew/openrouter/deepseek/deepseek-chat-v3.1) --- src/meta_plugin/mod.rs | 29 ++++------------------------- src/services/item_service.rs | 2 +- src/services/meta_service.rs | 2 +- 3 files changed, 6 insertions(+), 27 deletions(-) diff --git a/src/meta_plugin/mod.rs b/src/meta_plugin/mod.rs index 4c12834..0b80844 100644 --- a/src/meta_plugin/mod.rs +++ b/src/meta_plugin/mod.rs @@ -255,36 +255,15 @@ pub trait MetaPlugin where Self: 'static { } } -pub fn get_meta_plugin(meta_plugin_type: MetaPluginType) -> Box { - // Use new(None, None) which passes None for options and outputs - match meta_plugin_type { - MetaPluginType::FileMagic => Box::new(MetaPluginProgram::new("file", vec!["-bE", "-"], "file_magic".to_string(), true, None, None)), - MetaPluginType::FileMime => Box::new(MetaPluginProgram::new("file", vec!["-b", "--mime-type", "-"], "file_mime".to_string(), true, None, None)), - MetaPluginType::FileEncoding => Box::new(MetaPluginProgram::new("file", vec!["-b", "--mime-encoding", "-"], "file_encoding".to_string(), true, None, None)), - MetaPluginType::MagicFile => Box::new(MagicFileMetaPlugin::new(None, None)), - MetaPluginType::LineCount => Box::new(MetaPluginProgram::new("wc", vec!["-l"], "line_count".to_string(), true, None, None)), - MetaPluginType::WordCount => Box::new(MetaPluginProgram::new("wc", vec!["-w"], "word_count".to_string(), true, None, None)), - MetaPluginType::Cwd => Box::new(CwdMetaPlugin::new(None, None)), - MetaPluginType::Binary => Box::new(BinaryMetaPlugin::new(None, None)), - MetaPluginType::Text => Box::new(TextMetaPlugin::new(None, None)), - MetaPluginType::User => Box::new(UserMetaPlugin::new(None, None)), - MetaPluginType::Shell => Box::new(ShellMetaPlugin::new(None, None)), - MetaPluginType::ShellPid => Box::new(ShellPidMetaPlugin::new(None, None)), - MetaPluginType::KeepPid => Box::new(KeepPidMetaPlugin::new(None, None)), - MetaPluginType::Digest => Box::new(DigestMetaPlugin::new(None, None)), - MetaPluginType::ReadTime => Box::new(ReadTimeMetaPlugin::new(None, None)), - MetaPluginType::ReadRate => Box::new(ReadRateMetaPlugin::new(None, None)), - MetaPluginType::Hostname => Box::new(HostnameMetaPlugin::new(None, None)), - } -} - -// Add a new function to create plugins with options and outputs -pub fn get_meta_plugin_with_config( +pub fn get_meta_plugin( meta_plugin_type: MetaPluginType, options: Option>, outputs: Option>, ) -> Box { match meta_plugin_type { + MetaPluginType::FileMagic => Box::new(MetaPluginProgram::new("file", vec!["-bE", "-"], "file_magic".to_string(), true, options, outputs)), + MetaPluginType::FileMime => Box::new(MetaPluginProgram::new("file", vec!["-b", "--mime-type", "-"], "file_mime".to_string(), true, options, outputs)), + MetaPluginType::FileEncoding => Box::new(MetaPluginProgram::new("file", vec!["-b", "--mime-encoding", "-"], "file_encoding".to_string(), true, options, outputs)), MetaPluginType::MagicFile => Box::new(MagicFileMetaPlugin::new(options, outputs)), MetaPluginType::LineCount => Box::new(MetaPluginProgram::new("wc", vec!["-l"], "line_count".to_string(), true, options, outputs)), MetaPluginType::WordCount => Box::new(MetaPluginProgram::new("wc", vec!["-w"], "word_count".to_string(), true, options, outputs)), diff --git a/src/services/item_service.rs b/src/services/item_service.rs index fb5807c..ce47cce 100644 --- a/src/services/item_service.rs +++ b/src/services/item_service.rs @@ -353,7 +353,7 @@ impl ItemService { let mut plugins: Vec> = plugin_types .iter() - .map(|p| get_meta_plugin_with_config(p.clone(), None, None)) + .map(|p| crate::meta_plugin::get_meta_plugin(p.clone(), None, None)) .collect(); debug!("ITEM_SERVICE: Created {} meta plugins for MCP item", plugins.len()); diff --git a/src/services/meta_service.rs b/src/services/meta_service.rs index f9375ad..5a3cf51 100644 --- a/src/services/meta_service.rs +++ b/src/services/meta_service.rs @@ -77,7 +77,7 @@ impl MetaService { (None, None) }; - get_meta_plugin_with_config(meta_plugin_type.clone(), options, outputs) + crate::meta_plugin::get_meta_plugin(meta_plugin_type.clone(), options, outputs) }) .collect();