RED-9472: seperation of system rules
This commit is contained in:
parent
1ccdcf5844
commit
4978259fc6
@ -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
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -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);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user