|
|
@@ -0,0 +1,34 @@
|
|
|
+package org.leumasjaffe.json.schema;
|
|
|
+
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import lombok.AccessLevel;
|
|
|
+import lombok.Getter;
|
|
|
+import lombok.experimental.FieldDefaults;
|
|
|
+
|
|
|
+@SuppressWarnings("serial")
|
|
|
+@FieldDefaults(level=AccessLevel.PRIVATE, makeFinal=true)
|
|
|
+public class ValidationException extends IllegalArgumentException {
|
|
|
+ @Getter List<ValidationException> causingExceptions;
|
|
|
+
|
|
|
+ public ValidationException() {
|
|
|
+ this.causingExceptions = Collections.emptyList();
|
|
|
+ }
|
|
|
+
|
|
|
+ public ValidationException(String s) {
|
|
|
+ super(s);
|
|
|
+ this.causingExceptions = Collections.emptyList();
|
|
|
+ }
|
|
|
+
|
|
|
+ public ValidationException(ValidationException... causes) {
|
|
|
+ this.causingExceptions = Collections.unmodifiableList(Arrays.asList(causes));
|
|
|
+ }
|
|
|
+
|
|
|
+ public ValidationException(String message, ValidationException... causes) {
|
|
|
+ super(message);
|
|
|
+ this.causingExceptions = Collections.unmodifiableList(Arrays.asList(causes));
|
|
|
+ }
|
|
|
+
|
|
|
+}
|