From 0c3e8b6d927666a7bfb711c129525e85da633427 Mon Sep 17 00:00:00 2001
From: Martin Vogel <martin.vogel@sinc.de>
Date: Wed, 22 Jun 2022 18:31:10 +0200
Subject: [PATCH] #414 Add domain specific exceptions

---
 .../exceptions/AttachmentCreationException.java  |  8 ++++++++
 .../exceptions/AttachmentUploadException.java    |  8 ++++++++
 .../api/exceptions/AuthenticationException.java  | 11 +++++++++++
 .../ClientNotAuthenticatedException.java         | 13 +++++++++++++
 .../api/exceptions/DecryptionException.java      | 15 +++++++++++++++
 .../api/exceptions/EncryptionException.java      | 16 ++++++++++++++++
 .../api/exceptions/InitializationException.java  | 12 ++++++++++++
 .../exceptions/InvalidPublicKeyException.java    |  8 ++++++++
 .../api/exceptions/KeyNotRetrievedException.java |  8 ++++++++
 .../exceptions/MetadataNotCreatedException.java  |  8 ++++++++
 .../SubmissionNotCreatedException.java           |  8 ++++++++
 .../exceptions/SubmissionNotSentException.java   |  8 ++++++++
 .../api/exceptions/ValidationException.java      | 13 +++++++++++++
 .../exceptions/client/AttachmentUploadError.java | 14 --------------
 .../client/ClientNotAuthenticated.java           | 11 -----------
 .../client/SubmissionCreationError.java          | 13 -------------
 .../exceptions/client/SubmissionSendError.java   | 13 -------------
 .../internal/AuthenticationException.java        | 11 -----------
 .../exceptions/internal/DecryptionException.java | 15 ---------------
 .../exceptions/internal/EncryptionException.java | 16 ----------------
 .../internal/InitializationException.java        | 12 ------------
 21 files changed, 136 insertions(+), 105 deletions(-)
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentCreationException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentUploadException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/AuthenticationException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/ClientNotAuthenticatedException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/DecryptionException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/EncryptionException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/InitializationException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/InvalidPublicKeyException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/KeyNotRetrievedException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/MetadataNotCreatedException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotCreatedException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotSentException.java
 create mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/ValidationException.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/client/AttachmentUploadError.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/client/ClientNotAuthenticated.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionCreationError.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionSendError.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/AuthenticationException.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/DecryptionException.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/EncryptionException.java
 delete mode 100644 api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/InitializationException.java

diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentCreationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentCreationException.java
new file mode 100644
index 000000000..64bb8ac02
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentCreationException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class AttachmentCreationException extends RuntimeException {
+
+    public AttachmentCreationException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentUploadException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentUploadException.java
new file mode 100644
index 000000000..f83dee779
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AttachmentUploadException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class AttachmentUploadException extends RuntimeException {
+
+    public AttachmentUploadException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/AuthenticationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AuthenticationException.java
new file mode 100644
index 000000000..d81eb60d1
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/AuthenticationException.java
@@ -0,0 +1,11 @@
+package de.fitko.fitconnect.api.exceptions;
+
+/**
+ * An error that occurred during the OAuth authentication
+ */
+public class AuthenticationException extends RuntimeException {
+
+    public AuthenticationException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/ClientNotAuthenticatedException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/ClientNotAuthenticatedException.java
new file mode 100644
index 000000000..70ed2b4fb
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/ClientNotAuthenticatedException.java
@@ -0,0 +1,13 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class ClientNotAuthenticatedException extends RuntimeException {
+
+
+    public ClientNotAuthenticatedException(final String errorMessage) {
+        super(errorMessage);
+    }
+
+    public ClientNotAuthenticatedException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/DecryptionException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/DecryptionException.java
new file mode 100644
index 000000000..dba418f8a
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/DecryptionException.java
@@ -0,0 +1,15 @@
+package de.fitko.fitconnect.api.exceptions;
+
+/**
+ * An error that occurred decrypting data or attachments
+ */
+public class DecryptionException extends RuntimeException {
+
+    public DecryptionException(final String errorMessage) {
+        super(errorMessage);
+    }
+
+    public DecryptionException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/EncryptionException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/EncryptionException.java
new file mode 100644
index 000000000..985d10ecc
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/EncryptionException.java
@@ -0,0 +1,16 @@
+package de.fitko.fitconnect.api.exceptions;
+
+/**
+ * An error that occurred whilst encrypting data or attachments
+ */
+public class EncryptionException extends RuntimeException {
+
+    public EncryptionException(final String errorMessage) {
+        super(errorMessage);
+    }
+
+    public EncryptionException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
+
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/InitializationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/InitializationException.java
new file mode 100644
index 000000000..cdb9be913
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/InitializationException.java
@@ -0,0 +1,12 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class InitializationException extends RuntimeException {
+
+    public InitializationException(final String errorMessage) {
+        super(errorMessage);
+    }
+
+    public InitializationException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/InvalidPublicKeyException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/InvalidPublicKeyException.java
new file mode 100644
index 000000000..0ab43a953
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/InvalidPublicKeyException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class InvalidPublicKeyException extends RuntimeException {
+
+    public InvalidPublicKeyException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/KeyNotRetrievedException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/KeyNotRetrievedException.java
new file mode 100644
index 000000000..15499532d
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/KeyNotRetrievedException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class KeyNotRetrievedException extends RuntimeException {
+
+    public KeyNotRetrievedException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/MetadataNotCreatedException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/MetadataNotCreatedException.java
new file mode 100644
index 000000000..a045c1dac
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/MetadataNotCreatedException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class MetadataNotCreatedException extends RuntimeException {
+
+    public MetadataNotCreatedException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotCreatedException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotCreatedException.java
new file mode 100644
index 000000000..9487409e6
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotCreatedException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class SubmissionNotCreatedException extends RuntimeException {
+
+    public SubmissionNotCreatedException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotSentException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotSentException.java
new file mode 100644
index 000000000..63dfd3aac
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/SubmissionNotSentException.java
@@ -0,0 +1,8 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class SubmissionNotSentException extends RuntimeException {
+
+    public SubmissionNotSentException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/ValidationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/ValidationException.java
new file mode 100644
index 000000000..76c364c3b
--- /dev/null
+++ b/api/src/main/java/de/fitko/fitconnect/api/exceptions/ValidationException.java
@@ -0,0 +1,13 @@
+package de.fitko.fitconnect.api.exceptions;
+
+public class ValidationException extends RuntimeException {
+
+
+    public ValidationException(final String errorMessage) {
+        super(errorMessage);
+    }
+
+    public ValidationException(final String errorMessage, final Throwable error) {
+        super(errorMessage, error);
+    }
+}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/AttachmentUploadError.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/AttachmentUploadError.java
deleted file mode 100644
index 819a018fb..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/AttachmentUploadError.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.client;
-
-import de.fitko.fitconnect.api.domain.model.metadata.attachment.Attachment;
-import de.fitko.fitconnect.api.domain.model.submission.SubmissionRequest;
-
-/**
- * Error during upload of the {@link SubmissionRequest}s {@link Attachment}s
- */
-public class AttachmentUploadError extends RuntimeException {
-
-    public AttachmentUploadError(String errorMessage) {
-        super(errorMessage);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/ClientNotAuthenticated.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/ClientNotAuthenticated.java
deleted file mode 100644
index f90c48a3e..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/ClientNotAuthenticated.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.client;
-
-/**
- * Error during the authentication process of the client
- */
-public class ClientNotAuthenticated extends RuntimeException {
-
-    public ClientNotAuthenticated(String errorMessage) {
-        super(errorMessage);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionCreationError.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionCreationError.java
deleted file mode 100644
index c83e00b78..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionCreationError.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.client;
-
-import de.fitko.fitconnect.api.domain.model.submission.SubmissionRequest;
-
-/**
- * Error during the creation process of a {@link SubmissionRequest}
- */
-public class SubmissionCreationError extends RuntimeException {
-
-    public SubmissionCreationError(String errorMessage) {
-        super(errorMessage);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionSendError.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionSendError.java
deleted file mode 100644
index 028ce74bd..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/client/SubmissionSendError.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.client;
-
-import de.fitko.fitconnect.api.domain.model.submission.SubmissionRequest;
-
-/**
- * Error during the creation process of a {@link SubmissionRequest}
- */
-public class SubmissionSendError extends RuntimeException {
-
-    public SubmissionSendError(String errorMessage) {
-        super(errorMessage);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/AuthenticationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/AuthenticationException.java
deleted file mode 100644
index 6ae103a95..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/AuthenticationException.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.internal;
-
-/**
- * An error that occurred during the OAuth authentication
- */
-public class AuthenticationException extends Exception {
-
-    public AuthenticationException(String errorMessage, Throwable error) {
-        super(errorMessage, error);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/DecryptionException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/DecryptionException.java
deleted file mode 100644
index eea8127d6..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/DecryptionException.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.internal;
-
-/**
- * An error that occurred decrypting data or attachments
- */
-public class DecryptionException extends Exception {
-
-    public DecryptionException(String errorMessage) {
-        super(errorMessage);
-    }
-
-    public DecryptionException(String errorMessage, Throwable error) {
-        super(errorMessage, error);
-    }
-}
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/EncryptionException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/EncryptionException.java
deleted file mode 100644
index 43cdf2bf4..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/EncryptionException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.internal;
-
-/**
- * An error that occurred whilst encrypting data or attachments
- */
-public class EncryptionException extends Exception {
-
-    public EncryptionException(String errorMessage) {
-        super(errorMessage);
-    }
-
-    public EncryptionException(String errorMessage, Throwable error) {
-        super(errorMessage, error);
-    }
-}
-
diff --git a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/InitializationException.java b/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/InitializationException.java
deleted file mode 100644
index 02d40fe75..000000000
--- a/api/src/main/java/de/fitko/fitconnect/api/exceptions/internal/InitializationException.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package de.fitko.fitconnect.api.exceptions.internal;
-
-public class InitializationException extends RuntimeException {
-
-    public InitializationException(String errorMessage) {
-        super(errorMessage);
-    }
-
-    public InitializationException(String errorMessage, Throwable error) {
-        super(errorMessage, error);
-    }
-}
-- 
GitLab