aboutsummaryrefslogtreecommitdiffstats
path: root/crates/configuration/src/state/rule.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/configuration/src/state/rule.rs')
-rw-r--r--crates/configuration/src/state/rule.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/crates/configuration/src/state/rule.rs b/crates/configuration/src/state/rule.rs
new file mode 100644
index 0000000..4038865
--- /dev/null
+++ b/crates/configuration/src/state/rule.rs
@@ -0,0 +1,24 @@
+use uuid::Uuid;
+use warden_core::configuration::rule::{RuleConfiguration, RuleConfigurationRequest};
+
+use crate::state::cache_key::CacheKey;
+
+mod mutate_rule;
+mod query_rule;
+
+#[allow(dead_code)]
+pub struct RuleRow {
+ pub uuid: Uuid,
+ pub id: Option<String>,
+ pub version: Option<String>,
+ pub configuration: sqlx::types::Json<RuleConfiguration>,
+}
+
+impl<'a> From<&'a RuleConfigurationRequest> for CacheKey<'a> {
+ fn from(value: &'a RuleConfigurationRequest) -> Self {
+ Self::Rule {
+ id: &value.id,
+ version: &value.version,
+ }
+ }
+}