diff --git a/harmony/src/domain/interpret/mod.rs b/harmony/src/domain/interpret/mod.rs index 9cec988..0812ced 100644 --- a/harmony/src/domain/interpret/mod.rs +++ b/harmony/src/domain/interpret/mod.rs @@ -19,6 +19,7 @@ pub enum InterpretName { Dummy, Panic, OPNSense, + K3dInstallation, } impl std::fmt::Display for InterpretName { @@ -32,6 +33,7 @@ impl std::fmt::Display for InterpretName { InterpretName::Dummy => f.write_str("Dummy"), InterpretName::Panic => f.write_str("Panic"), InterpretName::OPNSense => f.write_str("OPNSense"), + InterpretName::K3dInstallation => f.write_str("K3dInstallation"), } } } diff --git a/harmony/src/modules/k3d/install.rs b/harmony/src/modules/k3d/install.rs index 6cd2bf9..0e0cec8 100644 --- a/harmony/src/modules/k3d/install.rs +++ b/harmony/src/modules/k3d/install.rs @@ -1,6 +1,13 @@ +use async_trait::async_trait; use serde::Serialize; -use crate::{score::Score, topology::Topology}; +use crate::{ + data::{Id, Version}, + interpret::{Interpret, InterpretError, InterpretName, InterpretStatus, Outcome}, + inventory::Inventory, + score::Score, + topology::Topology, +}; #[derive(Debug, Clone, Serialize)] pub struct K3DInstallationScore {} @@ -29,3 +36,29 @@ impl Score for K3DInstallationScore { todo!() } } + +#[derive(Debug)] +struct K3dInstallationInterpret {} + +#[async_trait] +impl Interpret for K3dInstallationInterpret { + async fn execute( + &self, + inventory: &Inventory, + topology: &T, + ) -> Result { + todo!() + } + fn get_name(&self) -> InterpretName { + InterpretName::K3dInstallation + } + fn get_version(&self) -> Version { + todo!() + } + fn get_status(&self) -> InterpretStatus { + todo!() + } + fn get_children(&self) -> Vec { + todo!() + } +}