From fe86d5a15c9659939bf0882534fafc9c53a57a5a Mon Sep 17 00:00:00 2001
From: Jonas Blatt <jonasblatt@uni-koblenz.de>
Date: Mon, 14 Oct 2019 22:50:15 +0200
Subject: [PATCH] Add nice name for Verifier Types and verifier classification

---
 .../classification/AbstractClassificationType.java  | 13 ++++++++++++-
 .../verifier/classification/ClassificationType.java |  4 ++++
 .../DecisionLogicLevelVerification.java             |  2 +-
 .../DrdModelingLevelVerification.java               |  5 ++---
 .../verifier/types/AbstractVerificationType.java    | 13 ++++++++++++-
 .../verifier/types/DateVerification.java            |  5 ++++-
 .../verifier/types/EmptyOutputVerification.java     |  5 ++++-
 .../types/EquivalentStringVerification.java         |  5 ++++-
 .../types/IdenticalBusinessRuleVerification.java    |  2 +-
 .../types/InputValueSyntaxVerification.java         |  1 +
 .../verifier/types/LonelyDataInputVerification.java |  1 +
 .../types/MissingInputColumnVerification.java       |  4 ++--
 .../types/MissingInputDataVerification.java         |  3 ++-
 .../verifier/types/MissingRuleVerification.java     |  5 ++++-
 .../verifier/types/OverlappingVerification.java     |  5 ++++-
 .../types/PartialReductionVerification.java         |  5 ++++-
 .../types/PredefinedExistingValueVerification.java  |  1 +
 .../types/PredefinedMissingValueVerification.java   |  1 +
 .../verifier/types/SubsumptionVerification.java     |  5 ++++-
 .../verifier/types/VerificationType.java            |  4 ++++
 .../resources/js/dmnVerificationResultSet..js       |  2 ++
 21 files changed, 74 insertions(+), 17 deletions(-)

diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/AbstractClassificationType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/AbstractClassificationType.java
index 3657db50..923bfa55 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/AbstractClassificationType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/AbstractClassificationType.java
@@ -6,18 +6,29 @@ import de.unikoblenz.fgbks.base.domain.Name;
 public abstract class AbstractClassificationType implements ClassificationType {
 
   protected Name name;
+  protected Name niceName;
   protected Description description;
 
-  protected AbstractClassificationType(Name name, Description description) {
+  protected AbstractClassificationType(Name name, Name niceName, Description description) {
     this.name = name;
+    this.niceName = niceName;
     this.description = description;
   }
 
+  protected AbstractClassificationType(Name name, Description description) {
+    this(name, new Name(name), description);
+  }
+
   @Override
   public Name getName() {
     return name;
   }
 
+  @Override
+  public Name getNiceName() {
+    return niceName;
+  }
+
   @Override
   public Description getDescription() {
     return description;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/ClassificationType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/ClassificationType.java
index e4359dea..b70195a0 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/ClassificationType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/ClassificationType.java
@@ -12,6 +12,10 @@ public interface ClassificationType extends Serializable {
   @JsonbProperty("name")
   Name getName();
 
+  @NotNull
+  @JsonbProperty("niceName")
+  Name getNiceName();
+
   @NotNull
   @JsonbProperty("description")
   Description getDescription();
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DecisionLogicLevelVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DecisionLogicLevelVerification.java
index a6e88e7a..f015e91f 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DecisionLogicLevelVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DecisionLogicLevelVerification.java
@@ -10,7 +10,7 @@ public class DecisionLogicLevelVerification extends AbstractClassificationType {
       new DecisionLogicLevelVerification();
 
   private DecisionLogicLevelVerification() {
-    super(new Name("DecisionLogic"), new Description("test")); // TODO
+    super(new Name("DecisionLogic"), new Name("Decision Logic"), new Description("test")); // TODO
   }
 
   public static DecisionLogicLevelVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DrdModelingLevelVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DrdModelingLevelVerification.java
index 6de26519..3feb1957 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DrdModelingLevelVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/classification/DrdModelingLevelVerification.java
@@ -6,11 +6,10 @@ import de.unikoblenz.fgbks.base.domain.Name;
 @Classification
 public class DrdModelingLevelVerification extends AbstractClassificationType {
 
-  private static final DrdModelingLevelVerification instance =
-      new DrdModelingLevelVerification();
+  private static final DrdModelingLevelVerification instance = new DrdModelingLevelVerification();
 
   private DrdModelingLevelVerification() {
-    super(new Name("DrdModeling"), new Description("test")); // TODO
+    super(new Name("DrdModeling"), new Name("DRD Modeling"), new Description("test")); // TODO
   }
 
   public static DrdModelingLevelVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/AbstractVerificationType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/AbstractVerificationType.java
index f81cf28f..2c66966f 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/AbstractVerificationType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/AbstractVerificationType.java
@@ -7,18 +7,29 @@ import java.util.Objects;
 public abstract class AbstractVerificationType implements VerificationType {
 
   protected Name name;
+  protected Name niceName;
   protected Description description;
 
-  protected AbstractVerificationType(Name name, Description description) {
+  protected AbstractVerificationType(Name name, Name niceName, Description description) {
     this.name = name;
+    this.niceName = niceName;
     this.description = description;
   }
 
+  protected AbstractVerificationType(Name name, Description description) {
+    this(name, new Name(name), description);
+  }
+
   @Override
   public Name getName() {
     return name;
   }
 
+  @Override
+  public Name getNiceName() {
+    return niceName;
+  }
+
   @Override
   public Description getDescription() {
     return description;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/DateVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/DateVerification.java
index 01f7b7bb..64ea2417 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/DateVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/DateVerification.java
@@ -12,7 +12,10 @@ public class DateVerification extends AbstractVerificationType {
   private static final DateVerification instance = new DateVerification();
 
   private DateVerification() {
-    super(new Name("DateFormatCheck"), new Description("test")); // TODO
+    super(
+        new Name("DateFormatVerification"),
+        new Name("Date Format Check"),
+        new Description("test")); // TODO
   }
 
   public static DateVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EmptyOutputVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EmptyOutputVerification.java
index 5c7c7a14..84212372 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EmptyOutputVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EmptyOutputVerification.java
@@ -12,7 +12,10 @@ public class EmptyOutputVerification extends AbstractVerificationType {
   private static final EmptyOutputVerification instance = new EmptyOutputVerification();
 
   private EmptyOutputVerification() {
-    super(new Name("EmptyOutputVerification"), new Description("test")); // TODO
+    super(
+        new Name("EmptyOutputVerification"),
+        new Name("Empty Output"),
+        new Description("test")); // TODO
   }
 
   public static EmptyOutputVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EquivalentStringVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EquivalentStringVerification.java
index d6285899..90803b7e 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EquivalentStringVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/EquivalentStringVerification.java
@@ -12,7 +12,10 @@ public class EquivalentStringVerification extends AbstractVerificationType {
   private static final EquivalentStringVerification instance = new EquivalentStringVerification();
 
   private EquivalentStringVerification() {
-    super(new Name("EquivalentStringVerification"), new Description("test")); // TODO
+    super(
+        new Name("EquivalentStringVerification"),
+        new Name("Equivalent Strings"),
+        new Description("test")); // TODO
   }
 
   public static EquivalentStringVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/IdenticalBusinessRuleVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/IdenticalBusinessRuleVerification.java
index eb60d8e3..749bd5b0 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/IdenticalBusinessRuleVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/IdenticalBusinessRuleVerification.java
@@ -13,7 +13,7 @@ public class IdenticalBusinessRuleVerification extends AbstractVerificationType
       new IdenticalBusinessRuleVerification();
 
   private IdenticalBusinessRuleVerification() {
-    super(new Name("IdenticalBusinessRuleVerification"), new Description("test")); // TODO
+    super(new Name("Identical Rules"), new Description("test")); // TODO
   }
 
   public static IdenticalBusinessRuleVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/InputValueSyntaxVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/InputValueSyntaxVerification.java
index da582dde..a4112152 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/InputValueSyntaxVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/InputValueSyntaxVerification.java
@@ -14,6 +14,7 @@ public class InputValueSyntaxVerification extends AbstractVerificationType {
   private InputValueSyntaxVerification() {
     super(
         new Name("InputValueSyntaxVerification"),
+        new Name("Input Value Syntax Check"),
         new Description("Check values for syntactical correctness."));
   }
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/LonelyDataInputVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/LonelyDataInputVerification.java
index 201bfa5a..f4a03689 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/LonelyDataInputVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/LonelyDataInputVerification.java
@@ -14,6 +14,7 @@ public class LonelyDataInputVerification extends AbstractVerificationType {
   private LonelyDataInputVerification() {
     super(
         new Name("LonelyDataInputVerification"),
+        new Name("Lonely Data Input"),
         new Description(
             "Checks for any input data node, if it has no connection to at least one decision table."));
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputColumnVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputColumnVerification.java
index 01a42585..6a5ce32f 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputColumnVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputColumnVerification.java
@@ -15,8 +15,8 @@ public class MissingInputColumnVerification extends AbstractVerificationType {
   private MissingInputColumnVerification() {
     super(
         new Name("MissingInputColumnVerification"),
-        new Description(
-            "todo")); // TODO englisch
+        new Name("Missing Input Column"),
+        new Description("todo")); // TODO
   }
 
   public static MissingInputColumnVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputDataVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputDataVerification.java
index 1aea6303..64cdb7a1 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputDataVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingInputDataVerification.java
@@ -15,8 +15,9 @@ public class MissingInputDataVerification extends AbstractVerificationType {
   private MissingInputDataVerification() {
     super(
         new Name("MissingInputDataVerification"),
+        new Name("Missing Input Data"),
         new Description(
-            "todo")); // TODO englisch
+            "todo")); // TODO
   }
 
   public static MissingInputDataVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingRuleVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingRuleVerification.java
index 3fbcb580..7143891d 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingRuleVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/MissingRuleVerification.java
@@ -12,7 +12,10 @@ public class MissingRuleVerification extends AbstractVerificationType {
   private static final MissingRuleVerification instance = new MissingRuleVerification();
 
   private MissingRuleVerification() {
-    super(new Name("MissingRuleVerification"), new Description("test")); // TODO
+    super(
+        new Name("MissingRuleVerification"),
+        new Name("Missing Rule"),
+        new Description("test")); // TODO
   }
 
   public static MissingRuleVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/OverlappingVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/OverlappingVerification.java
index ccf21864..c46f899d 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/OverlappingVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/OverlappingVerification.java
@@ -12,7 +12,10 @@ public class OverlappingVerification extends AbstractVerificationType {
   private static final OverlappingVerification instance = new OverlappingVerification();
 
   private OverlappingVerification() {
-    super(new Name("OverlappingVerification"), new Description("test")); // TODO
+    super(
+        new Name("OverlappingVerification"),
+        new Name("Overlapping Rules"),
+        new Description("test")); // TODO
   }
 
   public static OverlappingVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PartialReductionVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PartialReductionVerification.java
index f8d14769..16f050f8 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PartialReductionVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PartialReductionVerification.java
@@ -12,7 +12,10 @@ public class PartialReductionVerification extends AbstractVerificationType {
   private static final PartialReductionVerification instance = new PartialReductionVerification();
 
   private PartialReductionVerification() {
-    super(new Name("PartialReductionVerification"), new Description("test")); // TODO
+    super(
+        new Name("PartialReductionVerification"),
+        new Name("Partial Reductions"),
+        new Description("test")); // TODO
   }
 
   public static PartialReductionVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedExistingValueVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedExistingValueVerification.java
index c15ae69f..f8b941b0 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedExistingValueVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedExistingValueVerification.java
@@ -14,6 +14,7 @@ public class PredefinedExistingValueVerification extends AbstractVerificationTyp
   private PredefinedExistingValueVerification() {
     super(
         new Name("PredefinedExistingValueVerification"),
+        new Name("Predefined Existing Values"),
         new Description(
             "Es gibt in einer Tabellen-Zelle einen String Value, der aber nicht in der Liste der "
                 + "Predefines Values vorgesehen ist.")); // TODO englisch
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedMissingValueVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedMissingValueVerification.java
index 5e1026be..803cc04a 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedMissingValueVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/PredefinedMissingValueVerification.java
@@ -15,6 +15,7 @@ public class PredefinedMissingValueVerification extends AbstractVerificationType
   private PredefinedMissingValueVerification() {
     super(
         new Name("PredefinedMissingValueVerification"),
+        new Name("Predefined Missing Values"),
         new Description(
             "Es gibt in einer Tabellen-Zelle predefines values, die jedoch nicht in der spalte vorhanden sind.")); // TODO englisch
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/SubsumptionVerification.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/SubsumptionVerification.java
index 5bd61e14..f6216000 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/SubsumptionVerification.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/SubsumptionVerification.java
@@ -12,7 +12,10 @@ public class SubsumptionVerification extends AbstractVerificationType {
   private static final SubsumptionVerification instance = new SubsumptionVerification();
 
   private SubsumptionVerification() {
-    super(new Name("SubsumptionVerification"), new Description("test")); // TODO
+    super(
+        new Name("SubsumptionVerification"),
+        new Name("Rule Subsumptions"),
+        new Description("test")); // TODO
   }
 
   public static SubsumptionVerification getInstance() {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/VerificationType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/VerificationType.java
index b9a06e11..795af33b 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/VerificationType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/types/VerificationType.java
@@ -17,6 +17,10 @@ public interface VerificationType extends ValueObject {
   @JsonbProperty("name")
   Name getName();
 
+  @NotNull
+  @JsonbProperty("niceName")
+  Name getNiceName();
+
   @NotNull
   @JsonbProperty("description")
   Description getDescription();
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerificationResultSet..js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerificationResultSet..js
index 6161d2df..999e64ea 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerificationResultSet..js
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerificationResultSet..js
@@ -55,6 +55,7 @@
  * @type {object}
  * @property {string} description
  * @property {string} name
+ * @property {string} niceName
  * @property {VerificationClassification} classification
  */
 
@@ -63,4 +64,5 @@
  * @type {object}
  * @property {string} description
  * @property {string} name
+ *  * @property {string} niceName
  */
-- 
GitLab