From 4978259fc66a528bef5e62a9fa359c0c045ddda5 Mon Sep 17 00:00:00 2001 From: yhampe Date: Mon, 30 Sep 2024 12:12:07 +0200 Subject: [PATCH] RED-9472: seperation of system rules --- .../server/controller/RuleBuilderController.java | 16 +++++++++++----- .../v1/server/service/RuleBuilderService.java | 6 ++---- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RuleBuilderController.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RuleBuilderController.java index 5a57e521..09be0f0c 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RuleBuilderController.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RuleBuilderController.java @@ -8,7 +8,6 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemp import com.iqser.red.service.redaction.v1.model.RuleBuilderModel; import com.iqser.red.service.redaction.v1.model.RuleValidationModel; import com.iqser.red.service.redaction.v1.resources.RuleBuilderResource; -import com.iqser.red.service.redaction.v1.server.model.drools.RuleType; import com.iqser.red.service.redaction.v1.server.service.RuleBuilderService; import com.iqser.red.service.redaction.v1.server.service.drools.DroolsValidationService; import com.iqser.red.service.redaction.v1.server.utils.exception.RulesValidationException; @@ -38,9 +37,9 @@ public class RuleBuilderController implements RuleBuilderResource { RulesResponse rulesResponse = new RulesResponse(); String filteredRules = this.ruleBuilderService.cleanRuleFileOfSystemRules(systemRulesSeperationRequest.getRules(), true); try { - droolsValidationService.testRules(new RuleValidationModel("ENTITY", filteredRules)); + droolsValidationService.testRules(new RuleValidationModel(RuleFileType.ENTITY.name(), filteredRules)); } catch (Exception e) { - throw new RulesValidationException("Could not test rules: " + e.getMessage(), e); + throw new RulesValidationException("Error trying to compile the cleaned rule file: " + filteredRules + " with message: {} " + e.getMessage(), e); } rulesResponse.setRules(filteredRules); return rulesResponse; @@ -49,15 +48,22 @@ public class RuleBuilderController implements RuleBuilderResource { @Override public RulesResponse getRuleFileWithSeperatedSystemRules(RulesUpdateRequest rulesUpdateRequest) { + RulesResponse rulesResponse = new RulesResponse(); String mergedRules = ruleBuilderService.getRuleFileWithSeperatedSystemRules(rulesUpdateRequest.getExistingRules(), rulesUpdateRequest.getUpdatedRules()); try { - droolsValidationService.testRules(new RuleValidationModel("ENTITY", mergedRules)); + droolsValidationService.testRules(new RuleValidationModel(RuleFileType.ENTITY.name(), mergedRules)); } catch (Exception e) { - throw new RulesValidationException("Could not test rules: " + e.getMessage(), e); + throw new RulesValidationException("Error trying to compile the cleaned rule file: " + mergedRules + " with message: {} " + e.getMessage(), e); } rulesResponse.setRules(mergedRules); return rulesResponse; } + + private enum RuleFileType { + ENTITY, + COMPONENT + } + } diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RuleBuilderService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RuleBuilderService.java index 9e5f180e..65b17db3 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RuleBuilderService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RuleBuilderService.java @@ -41,7 +41,7 @@ public class RuleBuilderService { } ruleFileBluePrint.dropQueries(); if (removeImports) { - ruleFileBluePrint.dropQueries(); + ruleFileBluePrint.dropImports(); } log.info("Finished removing system rules for ruleFile"); @@ -62,9 +62,7 @@ public class RuleBuilderService { } ruleFileBluePrintExisting.setImports(ruleFileBluePrintUpdate.getImports()); ruleFileBluePrintUpdate.getRuleClasses() - .forEach(ruleClass -> { - ruleFileBluePrintExisting.addRuleClass(ruleClass); - }); + .forEach(ruleFileBluePrintExisting::addRuleClass); return RuleFileParser.buildRulesStringFromBluePrint(ruleFileBluePrintExisting); }