Bug 5200: Yang parser doesn't fill error-app-tag and error-message in constraints
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / rfc6020 / effective / type / PatternConstraintEffectiveImpl.java
index 184ebc401bd57f76d1aa0ef2a1e43fa7265f10f8..d8799648f621afc21a084bf0a08df6e8950dda15 100644 (file)
@@ -17,21 +17,24 @@ public class PatternConstraintEffectiveImpl implements PatternConstraint {
     private final String regEx;
     private final String description;
     private final String reference;
-
     private final String errorAppTag;
     private final String errorMessage;
 
     public PatternConstraintEffectiveImpl(final String regex, final Optional<String> description,
             final Optional<String> reference) {
+        this(regex, description.orNull(), reference.orNull(), "invalid-regular-expression", String.format(
+                "String %s is not valid regular expression.", regex));
+    }
 
+    public PatternConstraintEffectiveImpl(final String regex, final String description, final String reference,
+            final String errorAppTag, final String errorMessage) {
         super();
-
         this.regEx = Preconditions.checkNotNull(regex, "regex must not be null.");
-        this.description = description.orNull();
-        this.reference = reference.orNull();
-
-        errorAppTag = "invalid-regular-expression";
-        errorMessage = String.format("String %s is not valid regular expression.", regex);
+        this.description = description;
+        this.reference = reference;
+        this.errorAppTag = errorAppTag != null ? errorAppTag : "invalid-regular-expression";
+        this.errorMessage = errorMessage != null ? errorMessage : String.format(
+                "String %s is not valid regular expression.", regex);
     }
 
     @Override