From 684fe2113e201810e2c496d3b8e8dffb31f06725 Mon Sep 17 00:00:00 2001
From: Daniel <d.hornung@indiscale.com>
Date: Thu, 12 Oct 2023 15:55:37 +0200
Subject: [PATCH] MAINT: Update fmt-maven-plugin to 2.21.1.  Should fix flaky
 tests.

---
 pom.xml                                       |  4 +-
 .../org/caosdb/datetime/FragmentDateTime.java |  4 +-
 .../java/org/caosdb/datetime/UTCDateTime.java |  4 +-
 .../java/org/caosdb/server/CaosDBServer.java  |  3 +-
 .../org/caosdb/server/accessControl/Pam.java  |  8 +++-
 .../database/DatabaseAccessManager.java       |  1 +
 .../MySQL/DatabaseConnectionPool.java         |  8 +++-
 .../implementation/MySQL/DatabaseUtils.java   |  3 +-
 .../MySQL/MySQLLogUserVisit.java              |  1 +
 .../implementation/MySQL/Replacement.java     |  1 +
 .../RetrieveFullEntityTransaction.java        |  1 +
 .../database/misc/TransactionBenchmark.java   |  4 +-
 .../server/datatype/AbstractEnumValue.java    |  4 +-
 .../server/datatype/CollectionValue.java      |  4 +-
 .../server/datatype/ReferenceValue.java       |  4 +-
 .../caosdb/server/grpc/AuthInterceptor.java   |  4 +-
 .../org/caosdb/server/grpc/GRPCServer.java    | 26 ++++++++----
 .../java/org/caosdb/server/query/Query.java   | 14 ++++++-
 .../server/query/ResultSetIterator.java       |  3 +-
 .../AbstractCaosDBServerResource.java         | 26 +++++++++---
 .../resource/AuthenticationResource.java      | 16 ++++++--
 .../server/resource/DefaultResource.java      |  8 +++-
 .../server/resource/LogoutResource.java       |  8 +++-
 .../resource/PermissionRulesResource.java     |  8 +++-
 .../caosdb/server/resource/RolesResource.java | 26 +++++++++---
 .../server/resource/ServerLogsResource.java   |  8 +++-
 .../caosdb/server/resource/UserResource.java  | 16 ++++++--
 .../server/resource/UserRolesResource.java    |  8 +++-
 .../resource/transaction/EntityResource.java  |  8 +++-
 .../transaction/RetrieveEntityResource.java   |  8 +++-
 .../scripting/ServerSideScriptingCaller.java  |  4 +-
 .../transaction/ListRolesTransaction.java     |  4 +-
 .../transaction/ListUsersTransaction.java     |  4 +-
 .../server/transaction/Transaction.java       | 40 ++++++++++++++-----
 .../server/utils/AbstractObservable.java      |  4 +-
 .../transaction/RetrieveFullEntityTest.java   |  3 +-
 .../java/org/caosdb/server/query/TestCQL.java |  6 ++-
 .../TestAbstractCaosDBServerResource.java     |  8 +++-
 .../resource/TestScriptingResource.java       |  6 ++-
 .../caosdb/server/utils/FileUtilsTest.java    |  5 ++-
 40 files changed, 240 insertions(+), 85 deletions(-)

diff --git a/pom.xml b/pom.xml
index 76c2cd85..e6d5cb10 100644
--- a/pom.xml
+++ b/pom.xml
@@ -381,9 +381,9 @@
         </executions>
       </plugin>
       <plugin>
-        <groupId>com.coveo</groupId>
+        <groupId>com.spotify.fmt</groupId>
         <artifactId>fmt-maven-plugin</artifactId>
-        <version>2.5.1</version>
+        <version>2.21.1</version>
         <configuration>
           <skip>
             <!-- Set skip to `true` to prevent auto-formatting while coding. -->
diff --git a/src/main/java/org/caosdb/datetime/FragmentDateTime.java b/src/main/java/org/caosdb/datetime/FragmentDateTime.java
index 38c16a98..78ef7199 100644
--- a/src/main/java/org/caosdb/datetime/FragmentDateTime.java
+++ b/src/main/java/org/caosdb/datetime/FragmentDateTime.java
@@ -21,7 +21,9 @@
  * ** end header
  */
 
-/** @review Daniel Hornung 2022-03-04 */
+/**
+ * @review Daniel Hornung 2022-03-04
+ */
 package org.caosdb.datetime;
 
 import java.util.Objects;
diff --git a/src/main/java/org/caosdb/datetime/UTCDateTime.java b/src/main/java/org/caosdb/datetime/UTCDateTime.java
index 1dd86cc9..a7719d5a 100644
--- a/src/main/java/org/caosdb/datetime/UTCDateTime.java
+++ b/src/main/java/org/caosdb/datetime/UTCDateTime.java
@@ -21,7 +21,9 @@
  * ** end header
  */
 
-/** @review Daniel Hornung 2022-03-04 */
+/**
+ * @review Daniel Hornung 2022-03-04
+ */
 package org.caosdb.datetime;
 
 import java.util.ArrayList;
diff --git a/src/main/java/org/caosdb/server/CaosDBServer.java b/src/main/java/org/caosdb/server/CaosDBServer.java
index 8a09883b..bb36193f 100644
--- a/src/main/java/org/caosdb/server/CaosDBServer.java
+++ b/src/main/java/org/caosdb/server/CaosDBServer.java
@@ -671,7 +671,8 @@ public class CaosDBServer extends Application {
               return 0;
             }
             return -1;
-          };
+          }
+          ;
 
           @Override
           public int match(final String formattedString) {
diff --git a/src/main/java/org/caosdb/server/accessControl/Pam.java b/src/main/java/org/caosdb/server/accessControl/Pam.java
index 992665c1..76fde331 100644
--- a/src/main/java/org/caosdb/server/accessControl/Pam.java
+++ b/src/main/java/org/caosdb/server/accessControl/Pam.java
@@ -145,7 +145,9 @@ public class Pam implements UserSource {
     return this.map;
   }
 
-  /** @see {@link UserSource#resolveRolesForUsername(String)} */
+  /**
+   * @see {@link UserSource#resolveRolesForUsername(String)}
+   */
   @Override
   public Set<String> resolveRolesForUsername(final String username) {
     final Set<String> resulting_roles = new HashSet<String>();
@@ -266,7 +268,9 @@ public class Pam implements UserSource {
     return username != null && isIncorporated(username);
   }
 
-  /** @see {@link UserSource#isValid(String, String)}. */
+  /**
+   * @see {@link UserSource#isValid(String, String)}.
+   */
   @Override
   public boolean isValid(final String username, final String password) {
     if (username != null && isIncorporated(username)) {
diff --git a/src/main/java/org/caosdb/server/database/DatabaseAccessManager.java b/src/main/java/org/caosdb/server/database/DatabaseAccessManager.java
index f12c78e3..478953cb 100644
--- a/src/main/java/org/caosdb/server/database/DatabaseAccessManager.java
+++ b/src/main/java/org/caosdb/server/database/DatabaseAccessManager.java
@@ -60,6 +60,7 @@ class ReadAccessSemaphore extends Semaphore implements Releasable {
   private AtomicInteger acquired = new AtomicInteger(0); // how many threads have read access
   Semaphore writersBlock =
       new Semaphore(1, true); // This semaphore is blocked as long as there are any
+
   // unreleased read permits.
 
   public ReadAccessSemaphore() {
diff --git a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseConnectionPool.java b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseConnectionPool.java
index e91eab74..8234d948 100644
--- a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseConnectionPool.java
+++ b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseConnectionPool.java
@@ -74,8 +74,12 @@ class DatabaseConnectionPool {
   private static ConnectionPool instance = null;
 
   private static synchronized ConnectionPool createConnectionPool()
-      throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException,
-          ConnectionException, CaosDBException {
+      throws ClassNotFoundException,
+          InstantiationException,
+          IllegalAccessException,
+          SQLException,
+          ConnectionException,
+          CaosDBException {
 
     final String url =
         "jdbc:mysql://"
diff --git a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseUtils.java b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseUtils.java
index e7b684e6..6528627d 100644
--- a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseUtils.java
+++ b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/DatabaseUtils.java
@@ -332,8 +332,7 @@ public class DatabaseUtils {
               return ((Entry<Integer, String>) x).getKey() - ((Entry<Integer, String>) y).getKey();
             });
         pp.collValues =
-            pp.collValues
-                .stream()
+            pp.collValues.stream()
                 .map((x) -> (Object) ((Entry<Integer, String>) x).getValue())
                 .collect(Collectors.toList());
       }
diff --git a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/MySQLLogUserVisit.java b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/MySQLLogUserVisit.java
index 23050da8..d3b9167e 100644
--- a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/MySQLLogUserVisit.java
+++ b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/MySQLLogUserVisit.java
@@ -36,6 +36,7 @@ public class MySQLLogUserVisit extends MySQLTransaction implements LogUserVisitI
 
   public static final String LOG_USER_VISIT =
       "SELECT status FROM user_info WHERE realm = ? AND name = ?";
+
   // TODO Replace by "UPDATE user_info SET last_seen = ?";
 
   /** Return true if this is not the first visit of this user. */
diff --git a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/Replacement.java b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/Replacement.java
index 61e431ba..8ec47231 100644
--- a/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/Replacement.java
+++ b/src/main/java/org/caosdb/server/database/backend/implementation/MySQL/Replacement.java
@@ -28,6 +28,7 @@ import org.caosdb.server.entity.wrapper.Property;
 enum ReplacementStatus implements StatementStatusInterface {
   REPLACEMENT
 }
+
 /**
  * A wrapper of {@link Property} objects used by the back-end implementation for the MySQL/MariaDB
  * back-end.
diff --git a/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTransaction.java b/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTransaction.java
index eee73735..92f5aa84 100644
--- a/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTransaction.java
+++ b/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTransaction.java
@@ -160,6 +160,7 @@ public class RetrieveFullEntityTransaction extends BackendTransaction {
     }
     return false;
   }
+
   /**
    * Return true iff the parents need to be retrieved.
    *
diff --git a/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java b/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
index 397a1f52..6b14bd1d 100644
--- a/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
+++ b/src/main/java/org/caosdb/server/database/misc/TransactionBenchmark.java
@@ -132,6 +132,7 @@ class RootBenchmark extends TransactionBenchmark implements ServerStat {
 
   private static final long serialVersionUID = -95212746021180579L;
   private transient boolean synced = false;
+
   /**
    * Fetch old data (from before last shutdown) and fill it into this instance.
    *
@@ -286,7 +287,8 @@ public abstract class TransactionBenchmark implements Serializable {
 
   protected TransactionBenchmark() {
     stackTraceElements = Thread.currentThread().getStackTrace();
-  };
+  }
+  ;
 
   public Iterable<SubBenchmark> getSubBenchmarks() {
     return this.subBenchmarks.values();
diff --git a/src/main/java/org/caosdb/server/datatype/AbstractEnumValue.java b/src/main/java/org/caosdb/server/datatype/AbstractEnumValue.java
index be880025..ffe630ba 100644
--- a/src/main/java/org/caosdb/server/datatype/AbstractEnumValue.java
+++ b/src/main/java/org/caosdb/server/datatype/AbstractEnumValue.java
@@ -19,7 +19,9 @@
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
  */
 
-/** @review Daniel Hornung 2022-03-04 */
+/**
+ * @review Daniel Hornung 2022-03-04
+ */
 package org.caosdb.server.datatype;
 
 import com.google.common.base.Objects;
diff --git a/src/main/java/org/caosdb/server/datatype/CollectionValue.java b/src/main/java/org/caosdb/server/datatype/CollectionValue.java
index fc94f660..9fb8c6b3 100644
--- a/src/main/java/org/caosdb/server/datatype/CollectionValue.java
+++ b/src/main/java/org/caosdb/server/datatype/CollectionValue.java
@@ -21,7 +21,9 @@
  * ** end header
  */
 
-/** @review Daniel Hornung 2022-03-04 */
+/**
+ * @review Daniel Hornung 2022-03-04
+ */
 package org.caosdb.server.datatype;
 
 import java.util.ArrayList;
diff --git a/src/main/java/org/caosdb/server/datatype/ReferenceValue.java b/src/main/java/org/caosdb/server/datatype/ReferenceValue.java
index 4c84a760..e07b1b80 100644
--- a/src/main/java/org/caosdb/server/datatype/ReferenceValue.java
+++ b/src/main/java/org/caosdb/server/datatype/ReferenceValue.java
@@ -21,7 +21,9 @@
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
  */
 
-/** @review Daniel Hornung 2022-03-04 */
+/**
+ * @review Daniel Hornung 2022-03-04
+ */
 package org.caosdb.server.datatype;
 
 import java.util.Objects;
diff --git a/src/main/java/org/caosdb/server/grpc/AuthInterceptor.java b/src/main/java/org/caosdb/server/grpc/AuthInterceptor.java
index ce8a6221..3fea4dae 100644
--- a/src/main/java/org/caosdb/server/grpc/AuthInterceptor.java
+++ b/src/main/java/org/caosdb/server/grpc/AuthInterceptor.java
@@ -87,6 +87,7 @@ public class AuthInterceptor implements ServerInterceptor {
     metadata.put(CookieSetter.SET_COOKIE, CookieSetter.EXPIRED_SESSION_COOKIE);
     return metadata;
   }
+
   /**
    * A no-op listener. This class is used for failed authentications. We couldn't return a null
    * instead because the documentation of the {@link ServerInterceptor} explicitely forbids it.
@@ -281,7 +282,8 @@ final class CookieSetter<ReqT, RespT>
   public void sendHeaders(Metadata headers) {
     setSessionCookies(headers);
     super.sendHeaders(headers);
-  };
+  }
+  ;
 
   private void setSessionCookies(Metadata headers) {
     // if authenticated as a normal user: generate and set session cookie.
diff --git a/src/main/java/org/caosdb/server/grpc/GRPCServer.java b/src/main/java/org/caosdb/server/grpc/GRPCServer.java
index 73356140..494ce947 100644
--- a/src/main/java/org/caosdb/server/grpc/GRPCServer.java
+++ b/src/main/java/org/caosdb/server/grpc/GRPCServer.java
@@ -81,8 +81,11 @@ public class GRPCServer {
    * @throws IOException
    */
   private SslContext buildSslContext()
-      throws NoSuchAlgorithmException, UnrecoverableKeyException, KeyStoreException,
-          CertificateException, IOException {
+      throws NoSuchAlgorithmException,
+          UnrecoverableKeyException,
+          KeyStoreException,
+          CertificateException,
+          IOException {
     final KeyManagerFactory kmf =
         KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
     final char[] password =
@@ -112,7 +115,9 @@ public class GRPCServer {
     return builder.build();
   }
 
-  /** @return A list of services which should be added to the gRPC end-point. */
+  /**
+   * @return A list of services which should be added to the gRPC end-point.
+   */
   private List<ServerServiceDefinition> getEnabledServices() {
     final List<ServerServiceDefinition> services = new LinkedList<>();
 
@@ -153,8 +158,11 @@ public class GRPCServer {
    * @throws IOException
    */
   private Server buildServer(final int port, final boolean tls)
-      throws UnrecoverableKeyException, NoSuchAlgorithmException, KeyStoreException,
-          CertificateException, IOException {
+      throws UnrecoverableKeyException,
+          NoSuchAlgorithmException,
+          KeyStoreException,
+          CertificateException,
+          IOException {
     final NettyServerBuilder builder = NettyServerBuilder.forPort(port);
 
     if (tls) {
@@ -182,8 +190,12 @@ public class GRPCServer {
    * @throws UnrecoverableKeyException
    */
   public static void startServer()
-      throws IOException, InterruptedException, KeyStoreException, NoSuchAlgorithmException,
-          CertificateException, UnrecoverableKeyException {
+      throws IOException,
+          InterruptedException,
+          KeyStoreException,
+          NoSuchAlgorithmException,
+          CertificateException,
+          UnrecoverableKeyException {
 
     boolean started = false;
     final String port_https_str = getServerProperty(ServerProperties.KEY_GRPC_SERVER_PORT_HTTPS);
diff --git a/src/main/java/org/caosdb/server/query/Query.java b/src/main/java/org/caosdb/server/query/Query.java
index 0574cd1e..53cd7bf0 100644
--- a/src/main/java/org/caosdb/server/query/Query.java
+++ b/src/main/java/org/caosdb/server/query/Query.java
@@ -287,6 +287,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
   private final ArrayList<ToElementable> messages = new ArrayList<>();
   private Access access;
   private boolean versioned = false;
+
   /**
    * This key-value cache stores lists of of (id, version hash, acl string) triplets. Those values
    * are the result sets of queries. The keys are created such that they are different for different
@@ -301,8 +302,10 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
    */
   private static ICacheAccess<String, Serializable> cache =
       Cache.getCache("HIGH_LEVEL_QUERY_CACHE");
+
   /** Cached=true means that the results of this query have actually been pulled from the cache. */
   private boolean cached = false;
+
   /**
    * Cachable=false means that the results of this query cannot be used for the cache, because the
    * query evaluation contains complex permission checking which could only be cached on a per-user
@@ -334,7 +337,8 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
     this.container = container;
     this.query = query;
     this.user = user;
-  };
+  }
+  ;
 
   /**
    * Fill the initially empty resultSet with all entities which match the name, or the id. Then
@@ -740,6 +744,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
       this.resultSet = getCached(getCacheKey(false));
     }
   }
+
   /** Store the content of `resultSet` member in the high level query cache. */
   private void storeResultInCache() {
     // Decide whether user specific cache needs to be used or not
@@ -751,6 +756,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
       cacheItem(getCacheKey(false), this.resultSet);
     }
   }
+
   /** Fill entities from `resultSet` into `container`. */
   private void fillContainerWithResult() {
     if (this.container != null && (this.type == Type.FIND || this.type == Type.SELECT)) {
@@ -802,6 +808,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
     }
     return this;
   }
+
   /** Remove all cached queries from the cache. */
   public static void clearCache() {
     cacheETag = UUID.randomUUID().toString();
@@ -956,6 +963,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
     }
     return filtered;
   }
+
   /**
    * Creates a list with IDs of those entities that do not have sufficient RETRIEVE permission
    *
@@ -1015,7 +1023,9 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac
     return this.access;
   }
 
-  /** @return the number of entities in the resultset. Might be updated by the filters. */
+  /**
+   * @return the number of entities in the resultset. Might be updated by the filters.
+   */
   @Override
   public int getTargetSetCount() {
     return this.targetSetCount;
diff --git a/src/main/java/org/caosdb/server/query/ResultSetIterator.java b/src/main/java/org/caosdb/server/query/ResultSetIterator.java
index 27c5e922..a26c1f41 100644
--- a/src/main/java/org/caosdb/server/query/ResultSetIterator.java
+++ b/src/main/java/org/caosdb/server/query/ResultSetIterator.java
@@ -35,7 +35,8 @@ public class ResultSetIterator implements Iterator<IdVersionAclTriplet> {
       this.cursorHasMoved = true;
     }
     return this.currentIsValid;
-  };
+  }
+  ;
 
   public IdVersionAclTriplet next() {
     if (!this.cursorHasMoved) {
diff --git a/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java b/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
index 44ebfa22..de56fff3 100644
--- a/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
+++ b/src/main/java/org/caosdb/server/resource/AbstractCaosDBServerResource.java
@@ -243,8 +243,12 @@ public abstract class AbstractCaosDBServerResource extends ServerResource {
   }
 
   protected abstract Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception;
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception;
 
   @Post
   public Representation httpPost(final Representation entity) {
@@ -277,8 +281,12 @@ public abstract class AbstractCaosDBServerResource extends ServerResource {
   }
 
   protected Representation httpDeleteInChildClass()
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          Exception {
     getResponse().setStatus(Status.CLIENT_ERROR_METHOD_NOT_ALLOWED);
     return null;
   }
@@ -293,8 +301,14 @@ public abstract class AbstractCaosDBServerResource extends ServerResource {
   }
 
   protected Representation httpPostInChildClass(final Representation entity)
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, xmlNotWellFormedException, JDOMException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          xmlNotWellFormedException,
+          JDOMException,
+          Exception {
     getResponse().setStatus(Status.CLIENT_ERROR_METHOD_NOT_ALLOWED);
     return null;
   }
diff --git a/src/main/java/org/caosdb/server/resource/AuthenticationResource.java b/src/main/java/org/caosdb/server/resource/AuthenticationResource.java
index ed60d790..4f53ba12 100644
--- a/src/main/java/org/caosdb/server/resource/AuthenticationResource.java
+++ b/src/main/java/org/caosdb/server/resource/AuthenticationResource.java
@@ -52,8 +52,12 @@ public class AuthenticationResource extends AbstractCaosDBServerResource {
   /** Returns single "Login" element. XSLT will create a form. */
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     final Document doc = new Document();
     final Element rootElem = generateRootElement();
     doc.setRootElement(rootElem);
@@ -66,8 +70,12 @@ public class AuthenticationResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpDeleteInChildClass()
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          Exception {
     final Subject user = SecurityUtils.getSubject();
     if (user.isAuthenticated()) {
       user.logout();
diff --git a/src/main/java/org/caosdb/server/resource/DefaultResource.java b/src/main/java/org/caosdb/server/resource/DefaultResource.java
index 488cd667..39fbf47d 100644
--- a/src/main/java/org/caosdb/server/resource/DefaultResource.java
+++ b/src/main/java/org/caosdb/server/resource/DefaultResource.java
@@ -43,8 +43,12 @@ public class DefaultResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     final Document doc = new org.jdom2.Document();
     final Element root = generateRootElement();
     if (this.responseBody != null) {
diff --git a/src/main/java/org/caosdb/server/resource/LogoutResource.java b/src/main/java/org/caosdb/server/resource/LogoutResource.java
index 1659f751..f17bd0c6 100644
--- a/src/main/java/org/caosdb/server/resource/LogoutResource.java
+++ b/src/main/java/org/caosdb/server/resource/LogoutResource.java
@@ -33,8 +33,12 @@ public class LogoutResource extends AuthenticationResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     return super.httpDeleteInChildClass();
   }
 }
diff --git a/src/main/java/org/caosdb/server/resource/PermissionRulesResource.java b/src/main/java/org/caosdb/server/resource/PermissionRulesResource.java
index 8d2aa172..afdcb0d6 100644
--- a/src/main/java/org/caosdb/server/resource/PermissionRulesResource.java
+++ b/src/main/java/org/caosdb/server/resource/PermissionRulesResource.java
@@ -44,8 +44,12 @@ public class PermissionRulesResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     final String role = getRequestedItems()[0];
 
     getUser().checkPermission(ACMPermissions.PERMISSION_RETRIEVE_ROLE_PERMISSIONS(role));
diff --git a/src/main/java/org/caosdb/server/resource/RolesResource.java b/src/main/java/org/caosdb/server/resource/RolesResource.java
index ad1544da..73dee43e 100644
--- a/src/main/java/org/caosdb/server/resource/RolesResource.java
+++ b/src/main/java/org/caosdb/server/resource/RolesResource.java
@@ -46,8 +46,12 @@ public class RolesResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     final Element root = generateRootElement();
     final Document document = new Document();
 
@@ -74,8 +78,12 @@ public class RolesResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpDeleteInChildClass()
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          Exception {
     if (getRequestedItems().length > 0) {
       final String name = getRequestedItems()[0];
       if (name != null) {
@@ -97,8 +105,14 @@ public class RolesResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpPostInChildClass(final Representation entity)
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, xmlNotWellFormedException, JDOMException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          xmlNotWellFormedException,
+          JDOMException,
+          Exception {
 
     String name = null;
     String description = null;
diff --git a/src/main/java/org/caosdb/server/resource/ServerLogsResource.java b/src/main/java/org/caosdb/server/resource/ServerLogsResource.java
index f304f100..acc1833d 100644
--- a/src/main/java/org/caosdb/server/resource/ServerLogsResource.java
+++ b/src/main/java/org/caosdb/server/resource/ServerLogsResource.java
@@ -41,8 +41,12 @@ public class ServerLogsResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
 
     Level level = null;
     String message = null;
diff --git a/src/main/java/org/caosdb/server/resource/UserResource.java b/src/main/java/org/caosdb/server/resource/UserResource.java
index e7561dd8..ea8e8a26 100644
--- a/src/main/java/org/caosdb/server/resource/UserResource.java
+++ b/src/main/java/org/caosdb/server/resource/UserResource.java
@@ -53,8 +53,12 @@ public class UserResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
 
     final Document doc = new Document();
     final Element rootElem = generateRootElement();
@@ -176,8 +180,12 @@ public class UserResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpDeleteInChildClass()
-      throws ConnectionException, SQLException, CaosDBException, IOException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          SQLException,
+          CaosDBException,
+          IOException,
+          NoSuchAlgorithmException,
+          Exception {
 
     final Document doc = new Document();
     final Element rootElem = generateRootElement();
diff --git a/src/main/java/org/caosdb/server/resource/UserRolesResource.java b/src/main/java/org/caosdb/server/resource/UserRolesResource.java
index 4eb7f614..72fc906a 100644
--- a/src/main/java/org/caosdb/server/resource/UserRolesResource.java
+++ b/src/main/java/org/caosdb/server/resource/UserRolesResource.java
@@ -45,8 +45,12 @@ public class UserRolesResource extends AbstractCaosDBServerResource {
 
   @Override
   protected Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
     final String user = getRequestedItems()[0];
     final String realm =
         (getRequestAttributes().get("realm") != null
diff --git a/src/main/java/org/caosdb/server/resource/transaction/EntityResource.java b/src/main/java/org/caosdb/server/resource/transaction/EntityResource.java
index 8aa5bbb4..83304388 100644
--- a/src/main/java/org/caosdb/server/resource/transaction/EntityResource.java
+++ b/src/main/java/org/caosdb/server/resource/transaction/EntityResource.java
@@ -130,8 +130,12 @@ public class EntityResource extends RetrieveEntityResource {
    * requests which also contain file blobs.
    */
   private Element parseMultipartEntity(final WritableContainer container)
-      throws FileUploadException, IOException, Message, xmlNotWellFormedException,
-          NoSuchAlgorithmException, CaosDBException {
+      throws FileUploadException,
+          IOException,
+          Message,
+          xmlNotWellFormedException,
+          NoSuchAlgorithmException,
+          CaosDBException {
     final DiskFileItemFactory factory = new DiskFileItemFactory();
     factory.setSizeThreshold(1000240);
     final RestletFileUpload upload = new RestletFileUpload(factory);
diff --git a/src/main/java/org/caosdb/server/resource/transaction/RetrieveEntityResource.java b/src/main/java/org/caosdb/server/resource/transaction/RetrieveEntityResource.java
index 7a4ca373..d5feea9a 100644
--- a/src/main/java/org/caosdb/server/resource/transaction/RetrieveEntityResource.java
+++ b/src/main/java/org/caosdb/server/resource/transaction/RetrieveEntityResource.java
@@ -66,8 +66,12 @@ public abstract class RetrieveEntityResource extends AbstractCaosDBServerResourc
   /** Handle the GET request. */
   @Override
   protected final Representation httpGetInChildClass()
-      throws ConnectionException, IOException, SQLException, CaosDBException,
-          NoSuchAlgorithmException, Exception {
+      throws ConnectionException,
+          IOException,
+          SQLException,
+          CaosDBException,
+          NoSuchAlgorithmException,
+          Exception {
 
     final RetrieveContainer entityContainer =
         new RetrieveContainer(getUser(), getTimestamp(), getSRID(), getFlags());
diff --git a/src/main/java/org/caosdb/server/scripting/ServerSideScriptingCaller.java b/src/main/java/org/caosdb/server/scripting/ServerSideScriptingCaller.java
index edb6b39a..9a710e25 100644
--- a/src/main/java/org/caosdb/server/scripting/ServerSideScriptingCaller.java
+++ b/src/main/java/org/caosdb/server/scripting/ServerSideScriptingCaller.java
@@ -253,7 +253,9 @@ public class ServerSideScriptingCaller {
     if (pwd.exists()) FileUtils.forceDelete(pwd);
   }
 
-  /** @fixme Should be injected into environment instead. Will be changed in v0.4 of SSS-API */
+  /**
+   * @fixme Should be injected into environment instead. Will be changed in v0.4 of SSS-API
+   */
   String[] injectAuthToken(String[] commandLine) {
     String[] newCommandLine = new String[commandLine.length + 1];
     newCommandLine[0] = commandLine[0];
diff --git a/src/main/java/org/caosdb/server/transaction/ListRolesTransaction.java b/src/main/java/org/caosdb/server/transaction/ListRolesTransaction.java
index ed3cd3cc..f0b0db78 100644
--- a/src/main/java/org/caosdb/server/transaction/ListRolesTransaction.java
+++ b/src/main/java/org/caosdb/server/transaction/ListRolesTransaction.java
@@ -39,9 +39,7 @@ public class ListRolesTransaction extends AccessControlTransaction {
   protected void transaction() throws Exception {
     Subject currentUser = SecurityUtils.getSubject();
     roles =
-        execute(new ListRoles(), getAccess())
-            .getRoles()
-            .stream()
+        execute(new ListRoles(), getAccess()).getRoles().stream()
             .filter(
                 role ->
                     currentUser.isPermitted(
diff --git a/src/main/java/org/caosdb/server/transaction/ListUsersTransaction.java b/src/main/java/org/caosdb/server/transaction/ListUsersTransaction.java
index 2ade4e85..fe9b9c17 100644
--- a/src/main/java/org/caosdb/server/transaction/ListUsersTransaction.java
+++ b/src/main/java/org/caosdb/server/transaction/ListUsersTransaction.java
@@ -37,9 +37,7 @@ public class ListUsersTransaction extends AccessControlTransaction {
   protected void transaction() throws Exception {
     Subject currentUser = SecurityUtils.getSubject();
     users =
-        execute(new ListUsers(), getAccess())
-            .getUsers()
-            .stream()
+        execute(new ListUsers(), getAccess()).getUsers().stream()
             .filter(
                 user ->
                     currentUser.isPermitted(
diff --git a/src/main/java/org/caosdb/server/transaction/Transaction.java b/src/main/java/org/caosdb/server/transaction/Transaction.java
index 2ccff7b2..69dde0ea 100644
--- a/src/main/java/org/caosdb/server/transaction/Transaction.java
+++ b/src/main/java/org/caosdb/server/transaction/Transaction.java
@@ -357,38 +357,58 @@ public abstract class Transaction<C extends TransactionContainer> extends Abstra
     }
   }
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected void rollBack() {
     this.schedule.runJobs(TransactionStage.ROLL_BACK);
   }
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void init() throws Exception;
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void preCheck() throws InterruptedException, Exception;
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected final void check() {
     this.schedule.runJobs(TransactionStage.CHECK);
   }
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void postCheck();
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void preTransaction() throws InterruptedException;
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void transaction() throws Exception;
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void postTransaction() throws Exception;
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected abstract void cleanUp();
 
-  /** @see {@link #execute()} */
+  /**
+   * @see {@link #execute()}
+   */
   protected void commit() throws Exception {}
 
   public final Access getAccess() {
diff --git a/src/main/java/org/caosdb/server/utils/AbstractObservable.java b/src/main/java/org/caosdb/server/utils/AbstractObservable.java
index abc7f0a0..1bb4fc47 100644
--- a/src/main/java/org/caosdb/server/utils/AbstractObservable.java
+++ b/src/main/java/org/caosdb/server/utils/AbstractObservable.java
@@ -37,7 +37,9 @@ public abstract class AbstractObservable implements Observable {
     return this.observers.add(o);
   }
 
-  /** @param e A String denoting the notification event. */
+  /**
+   * @param e A String denoting the notification event.
+   */
   @Override
   public void notifyObservers(final String e) {
     if (this.observers != null) {
diff --git a/src/test/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTest.java b/src/test/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTest.java
index 014cb3d4..cfd8fcc9 100644
--- a/src/test/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTest.java
+++ b/src/test/java/org/caosdb/server/database/backend/transaction/RetrieveFullEntityTest.java
@@ -53,7 +53,8 @@ public class RetrieveFullEntityTest {
             assertEquals("description", selections.get(0).getSelector());
 
             e.setDescription("A heart-shaped window.");
-          };
+          }
+          ;
         };
 
     final Property window = new Property(new RetrieveEntity(new EntityID("2345")));
diff --git a/src/test/java/org/caosdb/server/query/TestCQL.java b/src/test/java/org/caosdb/server/query/TestCQL.java
index 8d7a7e8f..0c3f142c 100644
--- a/src/test/java/org/caosdb/server/query/TestCQL.java
+++ b/src/test/java/org/caosdb/server/query/TestCQL.java
@@ -3546,7 +3546,10 @@ public class TestCQL {
    */
   @Test
   public void TestTicket147i()
-      throws InterruptedException, SQLException, ConnectionException, QueryException,
+      throws InterruptedException,
+          SQLException,
+          ConnectionException,
+          QueryException,
           TransactionException {
     CQLLexer lexer;
     lexer = new CQLLexer(CharStreams.fromString(this.ticket147i));
@@ -6754,6 +6757,7 @@ public class TestCQL {
     // must not throw ParsingException
     new Query(this.queryIssue134).parse();
   }
+
   /**
    * Space before special character unit
    *
diff --git a/src/test/java/org/caosdb/server/resource/TestAbstractCaosDBServerResource.java b/src/test/java/org/caosdb/server/resource/TestAbstractCaosDBServerResource.java
index ca4fbb09..4da4ba5c 100644
--- a/src/test/java/org/caosdb/server/resource/TestAbstractCaosDBServerResource.java
+++ b/src/test/java/org/caosdb/server/resource/TestAbstractCaosDBServerResource.java
@@ -95,8 +95,12 @@ public class TestAbstractCaosDBServerResource {
 
           @Override
           protected Representation httpGetInChildClass()
-              throws ConnectionException, IOException, SQLException, CaosDBException,
-                  NoSuchAlgorithmException, Exception {
+              throws ConnectionException,
+                  IOException,
+                  SQLException,
+                  CaosDBException,
+                  NoSuchAlgorithmException,
+                  Exception {
             // TODO Auto-generated method stub
             return null;
           }
diff --git a/src/test/java/org/caosdb/server/resource/TestScriptingResource.java b/src/test/java/org/caosdb/server/resource/TestScriptingResource.java
index 31d4a384..b6004809 100644
--- a/src/test/java/org/caosdb/server/resource/TestScriptingResource.java
+++ b/src/test/java/org/caosdb/server/resource/TestScriptingResource.java
@@ -178,12 +178,14 @@ public class TestScriptingResource {
             return 0;
           }
           return -1;
-        };
+        }
+        ;
 
         @Override
         public Element generateRootElement(ServerSideScriptingCaller caller) {
           return new Element("OK");
-        };
+        }
+        ;
 
         @Override
         public Object generateAuthToken(String purpose) {
diff --git a/src/test/java/org/caosdb/server/utils/FileUtilsTest.java b/src/test/java/org/caosdb/server/utils/FileUtilsTest.java
index e05a3c7f..36851c4e 100644
--- a/src/test/java/org/caosdb/server/utils/FileUtilsTest.java
+++ b/src/test/java/org/caosdb/server/utils/FileUtilsTest.java
@@ -573,7 +573,10 @@ public class FileUtilsTest {
 
   @Test
   public void testFileSystemConsistencyCheck()
-      throws NoSuchAlgorithmException, IOException, TransactionException, InterruptedException,
+      throws NoSuchAlgorithmException,
+          IOException,
+          TransactionException,
+          InterruptedException,
           Message {
     final String rootPath = "./testFileSystemConsistencyCheck/";
     final File root = new File(rootPath);
-- 
GitLab