diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RedactionController.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RedactionController.java index b709dd44..11497a05 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RedactionController.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/controller/RedactionController.java @@ -17,6 +17,7 @@ import com.iqser.red.service.redaction.v1.resources.RedactionResource; import com.iqser.red.service.redaction.v1.server.classification.model.Document; import com.iqser.red.service.redaction.v1.server.classification.model.Page; import com.iqser.red.service.redaction.v1.server.exception.RedactionException; +import com.iqser.red.service.redaction.v1.server.exception.RulesValidationException; import com.iqser.red.service.redaction.v1.server.redaction.service.DroolsExecutionService; import com.iqser.red.service.redaction.v1.server.redaction.service.ManualRedactionSurroundingTextService; import com.iqser.red.service.redaction.v1.server.redaction.service.RedactionLogMergeService; @@ -41,6 +42,7 @@ public class RedactionController implements RedactionResource { private final RedactionLogMergeService redactionLogMergeService; private final ManualRedactionSurroundingTextService manualRedactionSurroundingTextService; + @Override public RedactionResult classify(@RequestBody RedactionRequest redactionRequest) { @@ -122,14 +124,17 @@ public class RedactionController implements RedactionResource { @Override public void testRules(@RequestBody String rules) { - droolsExecutionService.testRules(rules); + try { + droolsExecutionService.testRules(rules); + } catch (Exception e) { + throw new RulesValidationException("Could not test rules: " + e.getMessage(), e); + } } @Override public RedactionLog getRedactionLog(RedactionRequest redactionRequest) { - return redactionLogMergeService.provideRedactionLog(redactionRequest); } @@ -138,19 +143,14 @@ public class RedactionController implements RedactionResource { try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) { document.save(byteArrayOutputStream); - return RedactionResult.builder() - .document(byteArrayOutputStream.toByteArray()) - .numberOfPages(numberOfPages) - .build(); + return RedactionResult.builder().document(byteArrayOutputStream.toByteArray()).numberOfPages(numberOfPages).build(); } } @Override - public ManualRedactions addSurroundingText(@PathVariable("dossierId") String dossierId, - @PathVariable("fileId") String fileId, - @RequestBody ManualRedactions manualRedactions) { + public ManualRedactions addSurroundingText(@PathVariable("dossierId") String dossierId, @PathVariable("fileId") String fileId, @RequestBody ManualRedactions manualRedactions) { var result = manualRedactionSurroundingTextService.addSurroundingText(dossierId, fileId, manualRedactions); log.info("Added surrounding text for manual redaction in dossierId {} and fileId {} took: {}", dossierId, fileId, result.getDuration());