feat: update meta plugin constructors to accept options and outputs
Co-authored-by: aider (openai/andrew/openrouter/qwen/qwen3-coder) <aider@aider.chat>
This commit is contained in:
@@ -17,13 +17,33 @@ pub struct CwdMetaPlugin {
|
||||
}
|
||||
|
||||
impl CwdMetaPlugin {
|
||||
pub fn new() -> CwdMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> CwdMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
CwdMetaPlugin {
|
||||
meta_name: "cwd".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> CwdMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for CwdMetaPlugin {
|
||||
@@ -80,13 +100,33 @@ pub struct UidMetaPlugin {
|
||||
}
|
||||
|
||||
impl UidMetaPlugin {
|
||||
pub fn new() -> UidMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> UidMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
UidMetaPlugin {
|
||||
meta_name: "uid".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> UidMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for UidMetaPlugin {
|
||||
@@ -139,13 +179,33 @@ pub struct UserMetaPlugin {
|
||||
}
|
||||
|
||||
impl UserMetaPlugin {
|
||||
pub fn new() -> UserMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> UserMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
UserMetaPlugin {
|
||||
meta_name: "user".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> UserMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for UserMetaPlugin {
|
||||
@@ -201,13 +261,33 @@ pub struct GidMetaPlugin {
|
||||
}
|
||||
|
||||
impl GidMetaPlugin {
|
||||
pub fn new() -> GidMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> GidMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
GidMetaPlugin {
|
||||
meta_name: "gid".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> GidMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for GidMetaPlugin {
|
||||
@@ -260,13 +340,33 @@ pub struct GroupMetaPlugin {
|
||||
}
|
||||
|
||||
impl GroupMetaPlugin {
|
||||
pub fn new() -> GroupMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> GroupMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
GroupMetaPlugin {
|
||||
meta_name: "group".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> GroupMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for GroupMetaPlugin {
|
||||
@@ -322,13 +422,33 @@ pub struct ShellMetaPlugin {
|
||||
}
|
||||
|
||||
impl ShellMetaPlugin {
|
||||
pub fn new() -> ShellMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> ShellMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
ShellMetaPlugin {
|
||||
meta_name: "shell".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> ShellMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for ShellMetaPlugin {
|
||||
@@ -384,13 +504,33 @@ pub struct ShellPidMetaPlugin {
|
||||
}
|
||||
|
||||
impl ShellPidMetaPlugin {
|
||||
pub fn new() -> ShellPidMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> ShellPidMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
ShellPidMetaPlugin {
|
||||
meta_name: "shell_pid".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> ShellPidMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for ShellPidMetaPlugin {
|
||||
@@ -446,13 +586,33 @@ pub struct KeepPidMetaPlugin {
|
||||
}
|
||||
|
||||
impl KeepPidMetaPlugin {
|
||||
pub fn new() -> KeepPidMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> KeepPidMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
KeepPidMetaPlugin {
|
||||
meta_name: "keep_pid".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> KeepPidMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for KeepPidMetaPlugin {
|
||||
@@ -505,13 +665,33 @@ pub struct HostnameMetaPlugin {
|
||||
}
|
||||
|
||||
impl HostnameMetaPlugin {
|
||||
pub fn new() -> HostnameMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> HostnameMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
HostnameMetaPlugin {
|
||||
meta_name: "hostname".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> HostnameMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for HostnameMetaPlugin {
|
||||
@@ -567,13 +747,33 @@ pub struct FullHostnameMetaPlugin {
|
||||
}
|
||||
|
||||
impl FullHostnameMetaPlugin {
|
||||
pub fn new() -> FullHostnameMetaPlugin {
|
||||
pub fn new(
|
||||
_options: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
outputs: Option<std::collections::HashMap<String, serde_yaml::Value>>,
|
||||
) -> FullHostnameMetaPlugin {
|
||||
// Start with default outputs
|
||||
let mut final_outputs = std::collections::HashMap::new();
|
||||
let default_outputs = Self::default_outputs();
|
||||
for output_name in default_outputs {
|
||||
final_outputs.insert(output_name.clone(), serde_yaml::Value::String(output_name));
|
||||
}
|
||||
if let Some(outs) = outputs {
|
||||
for (key, value) in outs {
|
||||
final_outputs.insert(key, value);
|
||||
}
|
||||
}
|
||||
|
||||
FullHostnameMetaPlugin {
|
||||
meta_name: "full_hostname".to_string(),
|
||||
is_saved: false,
|
||||
outputs: std::collections::HashMap::new(),
|
||||
outputs: final_outputs,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new_simple() -> FullHostnameMetaPlugin {
|
||||
Self::new(None, None)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MetaPlugin for FullHostnameMetaPlugin {
|
||||
|
||||
Reference in New Issue
Block a user