From 9d876a32ce3fe325059e91bbc5fdea5438be6904 Mon Sep 17 00:00:00 2001 From: Kilian Schuettler Date: Thu, 7 Dec 2023 11:55:39 +0100 Subject: [PATCH] RED-7834: fixes for migration * remove color * fix manualChangeOverwrite * fix checkstyle --- .../v1/server/model/drools/RuleType.java | 1 - .../utility/rules/management/Main.java | 2 +- .../management/factory/RuleFileParser.java | 2 +- .../rules/management/models/RuleIdentifier.java | 9 +++++++-- .../rules/management/models/RuleType.java | 4 ++-- .../management/translation/OldRulesParser.java | 17 +++++++++-------- .../rules/management/utils/RuleFileIO.java | 15 +++++++++------ 7 files changed, 29 insertions(+), 21 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/model/drools/RuleType.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/model/drools/RuleType.java index 2c8eec2e..81152c11 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/model/drools/RuleType.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/model/drools/RuleType.java @@ -2,7 +2,6 @@ package com.iqser.red.service.redaction.v1.server.model.drools; import java.util.regex.Pattern; - public record RuleType(String name) { static Pattern alphaNumeric = Pattern.compile("^[a-zA-Z0-9]+$"); diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/Main.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/Main.java index c61bc9b8..0ed48037 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/Main.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/Main.java @@ -123,7 +123,7 @@ public class Main { private static String escapeRuleStringIfOptionIsSet(CommandLine finalCmd, String ruleFileString) { if (finalCmd.hasOption("e")) { - ruleFileString = RuleFileIO.escapeAndWrap(ruleFileString); + return RuleFileIO.escapeAndWrap(ruleFileString); } return ruleFileString; } diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/factory/RuleFileParser.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/factory/RuleFileParser.java index 778efb67..feb60f62 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/factory/RuleFileParser.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/factory/RuleFileParser.java @@ -96,7 +96,7 @@ public class RuleFileParser { /** - * Creates a BluePrint from all redact manager, documine and component rule files + * Creates a BluePrint from all redact manager, documine and component rule files. * * @return RuleFileBluePrint containing all rules from any all rule files */ diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleIdentifier.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleIdentifier.java index d98de961..a747f90d 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleIdentifier.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleIdentifier.java @@ -19,6 +19,7 @@ public record RuleIdentifier(@NonNull RuleType type, Integer unit, Integer id) { return fromString(identifier); } + public static RuleIdentifier fromRuleType(RuleType ruleType) { return new RuleIdentifier(ruleType, null, null); @@ -26,6 +27,7 @@ public record RuleIdentifier(@NonNull RuleType type, Integer unit, Integer id) { public static RuleIdentifier fromString(String identifier) { + String[] values = identifier.split("\\."); RuleType type = RuleType.fromString(values[0]); Integer group = values.length > 1 ? parseIntOrStar(values[1]) : null; @@ -33,6 +35,7 @@ public record RuleIdentifier(@NonNull RuleType type, Integer unit, Integer id) { return new RuleIdentifier(type, group, id); } + public static Set fromListOfIdentifiersString(String input) { return Arrays.stream(input.split(",")).map(String::trim).map(RuleIdentifier::fromString).collect(Collectors.toSet()); @@ -40,8 +43,10 @@ public record RuleIdentifier(@NonNull RuleType type, Integer unit, Integer id) { private static Integer parseIntOrStar(String value) { - value = value.replaceAll("\r",""); - return !value.equals("*") ? Integer.parseInt(value) : null; + + String cleanedValue = value; + cleanedValue = cleanedValue.replaceAll("\r", ""); + return !cleanedValue.equals("*") ? Integer.parseInt(cleanedValue) : null; } diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleType.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleType.java index 4eeaad66..8118e085 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleType.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/models/RuleType.java @@ -28,8 +28,8 @@ public class RuleType { public static RuleType fromString(String value) { - value = value.replaceAll("\r", ""); - return new RuleType(value); + String cleanedValue = value.replaceAll("\r", ""); + return new RuleType(cleanedValue); } diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/translation/OldRulesParser.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/translation/OldRulesParser.java index d15db736..9481eb8d 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/translation/OldRulesParser.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/translation/OldRulesParser.java @@ -39,7 +39,7 @@ import lombok.experimental.UtilityClass; @UtilityClass public class OldRulesParser { - final static List HEADERS = List.of("id", "old rule names", "old rule code", "translates to"); + static List HEADERS = List.of("id", "old rule names", "old rule code", "translates to"); @SneakyThrows @@ -117,7 +117,7 @@ public class OldRulesParser { StringWriter sw = new StringWriter(); CSVFormat csvFormat = CSVFormat.DEFAULT.builder().setHeader(HEADERS.toArray(String[]::new)).build(); - try (final CSVPrinter printer = new CSVPrinter(sw, csvFormat)) { + try (CSVPrinter printer = new CSVPrinter(sw, csvFormat)) { for (OldRulesCsvRecord record : records) { printer.printRecord(Stream.of(record.id, RuleFileIO.escapeAndWrap(record.names), RuleFileIO.escapeAndWrap(record.code), record.translatesTo)); } @@ -162,17 +162,18 @@ public class OldRulesParser { private List parseRuleIdentifiers(String value) { - if (value.startsWith("[")) { - value = value.substring(1); + String cleanedValue = value; + if (cleanedValue.startsWith("[")) { + cleanedValue = cleanedValue.substring(1); } - if (value.endsWith("]")) { - value = value.substring(0, value.length() - 1); + if (cleanedValue.endsWith("]")) { + cleanedValue = cleanedValue.substring(0, value.length() - 1); } - if (value.isEmpty() || value.isBlank()) { + if (cleanedValue.isEmpty() || cleanedValue.isBlank()) { return Collections.emptyList(); } List ruleIdentifiers = new LinkedList<>(); - for (String identifier : value.split(", ")) { + for (String identifier : cleanedValue.split(", ")) { ruleIdentifiers.add(RuleIdentifier.fromString(identifier)); } return ruleIdentifiers; diff --git a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/utils/RuleFileIO.java b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/utils/RuleFileIO.java index dc738de0..8cf1e762 100644 --- a/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/utils/RuleFileIO.java +++ b/redaction-service-v1/rules-management/src/main/java/com/knecon/fforesight/utility/rules/management/utils/RuleFileIO.java @@ -20,9 +20,11 @@ public final class RuleFileIO { if (rulesString.isBlank() || rulesString.isEmpty()) { return rulesString; } - rulesString = rulesString.substring(1, rulesString.length() - 1); - rulesString = rulesString.translateEscapes(); - return rulesString; + + String ruleStringToUnescape = rulesString; + ruleStringToUnescape = ruleStringToUnescape.substring(1, ruleStringToUnescape.length() - 1); + ruleStringToUnescape = ruleStringToUnescape.translateEscapes(); + return ruleStringToUnescape; } @@ -43,9 +45,10 @@ public final class RuleFileIO { public String escapeAndWrap(String rulesString) { - rulesString = StringEscapeUtils.escapeJava(rulesString); - rulesString = "\"" + rulesString + "\""; - return rulesString; + String rulesStringToEscape = rulesString; + rulesStringToEscape = StringEscapeUtils.escapeJava(rulesStringToEscape); + rulesStringToEscape = "\"" + rulesStringToEscape + "\""; + return rulesStringToEscape; }