From f37f3b2dcf10102d03bbf3fb3233a801537d45ad Mon Sep 17 00:00:00 2001 From: deiflaender Date: Wed, 1 Dec 2021 12:40:59 +0100 Subject: [PATCH] RED-2862: Added possibility to ignore dictionaries by rule --- .../redaction/v1/server/redaction/model/Section.java | 5 +++++ .../src/test/resources/drools/rules.drl | 9 ++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/Section.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/Section.java index e364ec34..c711b6ed 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/Section.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/redaction/model/Section.java @@ -252,6 +252,11 @@ public class Section { } + public void ignore(String type){ + entities.removeIf(entity -> entity.getType().equals(type)); + } + + @ThenAction public void redactNotAndReference(@Argument(ArgumentType.TYPE) String type, @Argument(ArgumentType.REFERENCE_TYPE) String referenceType, diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/resources/drools/rules.drl b/redaction-service-v1/redaction-service-server-v1/src/test/resources/drools/rules.drl index c0b96ff9..2ed23658 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/resources/drools/rules.drl +++ b/redaction-service-v1/redaction-service-server-v1/src/test/resources/drools/rules.drl @@ -344,4 +344,11 @@ rule "29: Redact Dossier Redactions" Section(matchesType("dossier_redactions")) then section.redact("dossier_redactions", 29, "Dossier Redaction found", "Article 39(1)(2) of Regulation (EC) No 178/2002"); - end \ No newline at end of file + end + +rule "30: Ignore dossier_redactions if confidential" + when + Section(!fileAttributeByLabelEqualsIgnoreCase("Confidentiality","confidential") && matchesType("dossier_redactions")); + then + section.ignore("dossier_redactions"); + end \ No newline at end of file