diff --git a/commafeed-server/pom.xml b/commafeed-server/pom.xml
index 2897cbbd..2653ca83 100644
--- a/commafeed-server/pom.xml
+++ b/commafeed-server/pom.xml
@@ -1,567 +1,568 @@
- 4.0.0
+ 4.0.0
-
- com.commafeed
- commafeed
- 7.2.0
-
- commafeed-server
- CommaFeed Server
- quarkus
+
+ com.commafeed
+ commafeed
+ 7.2.0
+
+ commafeed-server
+ CommaFeed Server
+ quarkus
-
- 3.38.0
- 7.5
- 2.1.0
+
+ 3.38.0
+ 7.5
+ 2.1.0
- h2
-
+ h2
+
-
-
-
- io.quarkus.platform
- quarkus-bom
- ${quarkus.version}
- pom
- import
-
-
-
- com.google.protobuf
- protobuf-java
- 4.35.1
-
-
-
+
+
+
+ io.quarkus.platform
+ quarkus-bom
+ ${quarkus.version}
+ pom
+ import
+
+
+
+ com.google.protobuf
+ protobuf-java
+ 4.35.1
+
+
+
-
-
-
- kr.motd.maven
- os-maven-plugin
- 1.7.1
-
-
-
-
- maven-help-plugin
- 3.5.2
-
-
- initialize
-
- active-profiles
-
-
-
-
-
- org.codehaus.mojo
- properties-maven-plugin
- 1.3.0
-
-
-
- set-system-properties
-
-
-
-
-
-
- quarkus.datasource.db-kind
- ${build.database}
-
-
-
-
-
- io.quarkus.platform
- quarkus-maven-plugin
- ${quarkus.version}
- true
-
-
- commafeed-${project.version}
-
- -${build.database}-${os.detected.name}-${os.detected.arch}-runner
-
-
-
-
-
- io.quarkus
- quarkus-config-doc-maven-plugin
- ${quarkus.version}
- true
-
-
- default-generate-config-doc
- process-test-resources
-
- generate-config-doc
-
-
- markdown
-
-
-
-
-
- org.codehaus.mojo
- exec-maven-plugin
- 3.6.3
-
-
- io.quarkus
- quarkus-extension-processor
- ${quarkus.version}
-
-
-
- true
- com.commafeed.tools.CommaFeedPropertiesGenerator
-
- ${project.build.directory}
-
-
-
-
- process-test-resources
-
- java
-
-
-
-
+
+
+
+ kr.motd.maven
+ os-maven-plugin
+ 1.7.1
+
+
+
+
+ maven-help-plugin
+ 3.5.2
+
+
+ initialize
+
+ active-profiles
+
+
+
+
+
+ org.codehaus.mojo
+ properties-maven-plugin
+ 1.3.0
+
+
+
+ set-system-properties
+
+
+
+
+
+
+ quarkus.datasource.db-kind
+ ${build.database}
+
+
+
+
+
+ io.quarkus.platform
+ quarkus-maven-plugin
+ ${quarkus.version}
+ true
+
+
+ commafeed-${project.version}
+
+ -${build.database}-${os.detected.name}-${os.detected.arch}-runner
+
+
+
+
+
+ io.quarkus
+ quarkus-config-doc-maven-plugin
+ ${quarkus.version}
+ true
+
+
+ default-generate-config-doc
+ process-test-resources
+
+ generate-config-doc
+
+
+ markdown
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.6.3
+
+
+ io.quarkus
+ quarkus-extension-processor
+ ${quarkus.version}
+
+
+
+ true
+ com.commafeed.tools.CommaFeedPropertiesGenerator
+
+ ${project.build.directory}
+
+
+
+
+ process-test-resources
+
+ java
+
+
+
+
-
- org.apache.maven.plugins
- maven-assembly-plugin
- 3.8.0
-
-
- package
-
- single
-
-
- commafeed-${project.version}-${build.database}-jvm
- false
-
- src/main/assembly/zip-quarkus-app.xml
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
- 3.5.6
-
- @{argLine}
-
- org.jboss.logmanager.LogManager
- ${build.database}
-
-
-
-
- org.apache.maven.plugins
- maven-failsafe-plugin
- 3.5.6
-
-
-
- integration-test
- verify
-
-
-
-
- @{argLine}
-
- ${project.build.directory}/${project.build.finalName}-runner
-
- org.jboss.logmanager.LogManager
- ${build.database}
-
-
-
-
-
- io.quarkus
- quarkus-jdbc-h2
- ${quarkus.version}
-
-
- io.quarkus
- quarkus-jdbc-mysql
- ${quarkus.version}
-
-
- io.quarkus
- quarkus-jdbc-mariadb
- ${quarkus.version}
-
-
- io.quarkus
- quarkus-jdbc-postgresql
- ${quarkus.version}
-
-
-
-
- io.github.git-commit-id
- git-commit-id-maven-plugin
- 10.0.0
-
-
-
- revision
-
-
-
-
- true
- ${project.build.outputDirectory}/git.properties
-
- false
- false
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 3.6.0
-
-
- com.puppycrawl.tools
- checkstyle
- 13.9.0
-
-
-
-
- validate
- validate
-
- check
-
-
-
-
- true
- true
- false
-
- ${project.build.sourceDirectory}
-
-
- ${project.build.testSourceDirectory}
-
- true
- dev/checkstyle.xml
-
-
-
- com.diffplug.spotless
- spotless-maven-plugin
- 3.9.0
-
-
-
- validate
-
- check
-
-
-
-
- UTF-8
-
-
-
-
-
-
-
-
-
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+ 3.8.0
+
+
+ package
+
+ single
+
+
+ commafeed-${project.version}-${build.database}-jvm
+ false
+
+ src/main/assembly/zip-quarkus-app.xml
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.5.6
+
+ @{argLine}
+
+ org.jboss.logmanager.LogManager
+ ${build.database}
+
+
+
+
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+ 3.5.6
+
+
+
+ integration-test
+ verify
+
+
+
+
+ @{argLine}
+
+ ${project.build.directory}/${project.build.finalName}-runner
+
+ org.jboss.logmanager.LogManager
+ ${build.database}
+
+
+
+
+
+ io.quarkus
+ quarkus-jdbc-h2
+ ${quarkus.version}
+
+
+ io.quarkus
+ quarkus-jdbc-mysql
+ ${quarkus.version}
+
+
+ io.quarkus
+ quarkus-jdbc-mariadb
+ ${quarkus.version}
+
+
+ io.quarkus
+ quarkus-jdbc-postgresql
+ ${quarkus.version}
+
+
+
+
+ io.github.git-commit-id
+ git-commit-id-maven-plugin
+ 10.0.0
+
+
+
+ revision
+
+
+
+
+ true
+ ${project.build.outputDirectory}/git.properties
+
+ false
+ false
+
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 3.6.0
+
+
+ com.puppycrawl.tools
+ checkstyle
+ 13.9.0
+
+
+
+
+ validate
+ validate
+
+ check
+
+
+
+
+ true
+ true
+ false
+
+ ${project.build.sourceDirectory}
+
+
+ ${project.build.testSourceDirectory}
+
+ true
+ dev/checkstyle.xml
+
+
+
+ com.diffplug.spotless
+ spotless-maven-plugin
+ 3.9.0
+
+
+
+ validate
+
+ check
+
+
+
+
+ UTF-8
+
+
+
+ true
+
+
+
+
+
+
-
-
- com.commafeed
- commafeed-client
- 7.2.0
-
+
+
+ com.commafeed
+ commafeed-client
+ 7.2.0
+
-
-
- org.projectlombok
- lombok
- 1.18.46
-
-
- org.kohsuke.metainf-services
- metainf-services
- 1.11
- provided
-
-
- io.quarkus
- quarkus-extension-processor
- provided
-
+
+
+ org.projectlombok
+ lombok
+ 1.18.46
+
+
+ org.kohsuke.metainf-services
+ metainf-services
+ 1.11
+ provided
+
+
+ io.quarkus
+ quarkus-extension-processor
+ provided
+
-
-
- io.quarkus
- quarkus-arc
-
-
- io.quarkus
- quarkus-security
-
-
- io.quarkus
- quarkus-hibernate-validator
-
-
- io.quarkus
- quarkus-rest
-
-
- io.quarkus
- quarkus-rest-jackson
-
-
- io.quarkus
- quarkus-websockets
-
-
- io.quarkus
- quarkus-mailer
-
-
- io.quarkus
- quarkus-hibernate-orm
-
-
- io.quarkus
- quarkus-liquibase
-
-
- io.quarkus
- quarkus-smallrye-openapi
-
+
+
+ io.quarkus
+ quarkus-arc
+
+
+ io.quarkus
+ quarkus-security
+
+
+ io.quarkus
+ quarkus-hibernate-validator
+
+
+ io.quarkus
+ quarkus-rest
+
+
+ io.quarkus
+ quarkus-rest-jackson
+
+
+ io.quarkus
+ quarkus-websockets
+
+
+ io.quarkus
+ quarkus-mailer
+
+
+ io.quarkus
+ quarkus-hibernate-orm
+
+
+ io.quarkus
+ quarkus-liquibase
+
+
+ io.quarkus
+ quarkus-smallrye-openapi
+
-
- io.dropwizard.metrics
- metrics-json
- 4.2.39
-
-
- io.github.openfeign.querydsl
- querydsl-apt
- ${querydsl.version}
- provided
- jakarta
-
-
- io.github.openfeign.querydsl
- querydsl-jpa
- ${querydsl.version}
-
-
- com.google.guava
- guava
-
-
- org.apache.commons
- commons-collections4
- 4.5.0
-
-
- org.apache.commons
- commons-math3
- 3.6.1
-
-
- dev.cel
- cel
- 0.13.1
-
-
- org.passay
- passay
- 2.0.0
-
-
- com.rometools
- rome
- ${rome.version}
-
-
- com.rometools
- rome-modules
- ${rome.version}
-
-
- com.rometools
- rome-opml
- ${rome.version}
-
-
- org.ahocorasick
- ahocorasick
- 0.6.3
-
-
- org.jsoup
- jsoup
- 1.22.2
-
-
- com.ibm.icu
- icu4j
- 78.3
-
-
- net.sourceforge.cssparser
- cssparser
- 0.9.30
-
-
- org.netpreserve
- urlcanon
- 0.4.0
-
-
- org.apache.httpcomponents.client5
- httpclient5
- 5.6.2
-
-
- io.github.hakky54
- ayza-for-apache5
- 10.0.5
-
-
- org.brotli
- dec
- 0.1.2
-
-
- com.github.seancfoley
- ipaddress
- 5.6.2
-
+
+ io.dropwizard.metrics
+ metrics-json
+ 4.2.39
+
+
+ io.github.openfeign.querydsl
+ querydsl-apt
+ ${querydsl.version}
+ provided
+ jakarta
+
+
+ io.github.openfeign.querydsl
+ querydsl-jpa
+ ${querydsl.version}
+
+
+ com.google.guava
+ guava
+
+
+ org.apache.commons
+ commons-collections4
+ 4.5.0
+
+
+ org.apache.commons
+ commons-math3
+ 3.6.1
+
+
+ dev.cel
+ cel
+ 0.13.1
+
+
+ org.passay
+ passay
+ 2.0.0
+
+
+ com.rometools
+ rome
+ ${rome.version}
+
+
+ com.rometools
+ rome-modules
+ ${rome.version}
+
+
+ com.rometools
+ rome-opml
+ ${rome.version}
+
+
+ org.ahocorasick
+ ahocorasick
+ 0.6.3
+
+
+ org.jsoup
+ jsoup
+ 1.22.2
+
+
+ com.ibm.icu
+ icu4j
+ 78.3
+
+
+ net.sourceforge.cssparser
+ cssparser
+ 0.9.30
+
+
+ org.netpreserve
+ urlcanon
+ 0.4.0
+
+
+ org.apache.httpcomponents.client5
+ httpclient5
+ 5.6.2
+
+
+ io.github.hakky54
+ ayza-for-apache5
+ 10.0.5
+
+
+ org.brotli
+ dec
+ 0.1.2
+
+
+ com.github.seancfoley
+ ipaddress
+ 5.6.2
+
-
-
- io.quarkus
- quarkus-junit-mockito
- test
-
-
- io.quarkiverse.playwright
- quarkus-playwright
- 2.3.7
- test
-
-
- org.mock-server
- mockserver-junit-jupiter
- 7.4.0
- test
-
-
- io.rest-assured
- rest-assured
- test
-
-
- org.awaitility
- awaitility
- test
-
-
- org.reflections
- reflections
- 0.10.2
- test
-
-
+
+
+ io.quarkus
+ quarkus-junit-mockito
+ test
+
+
+ io.quarkiverse.playwright
+ quarkus-playwright
+ 2.3.7
+ test
+
+
+ org.mock-server
+ mockserver-junit-jupiter
+ 7.4.0
+ test
+
+
+ io.rest-assured
+ rest-assured
+ test
+
+
+ org.awaitility
+ awaitility
+ test
+
+
+ org.reflections
+ reflections
+ 0.10.2
+ test
+
+
-
-
- native
-
-
- native
-
-
-
- true
-
-
+
+
+ native
+
+
+ native
+
+
+
+ true
+
+
-
- h2
-
- true
-
-
- h2
-
-
-
- io.quarkus
- quarkus-jdbc-h2
-
-
-
-
- mysql
-
- mysql
-
-
-
- io.quarkus
- quarkus-jdbc-mysql
-
-
-
-
- mariadb
-
- mariadb
-
-
-
- io.quarkus
- quarkus-jdbc-mariadb
-
-
-
-
- postgresql
-
- postgresql
-
-
-
- io.quarkus
- quarkus-jdbc-postgresql
-
-
-
-
+
+ h2
+
+ true
+
+
+ h2
+
+
+
+ io.quarkus
+ quarkus-jdbc-h2
+
+
+
+
+ mysql
+
+ mysql
+
+
+
+ io.quarkus
+ quarkus-jdbc-mysql
+
+
+
+
+ mariadb
+
+ mariadb
+
+
+
+ io.quarkus
+ quarkus-jdbc-mariadb
+
+
+
+
+ postgresql
+
+ postgresql
+
+
+
+ io.quarkus
+ quarkus-jdbc-postgresql
+
+
+
+
diff --git a/commafeed-server/src/main/java/com/commafeed/CommaFeedApplication.java b/commafeed-server/src/main/java/com/commafeed/CommaFeedApplication.java
index a0497297..1ac3f535 100644
--- a/commafeed-server/src/main/java/com/commafeed/CommaFeedApplication.java
+++ b/commafeed-server/src/main/java/com/commafeed/CommaFeedApplication.java
@@ -4,10 +4,13 @@ import com.commafeed.backend.feed.FeedRefreshEngine;
import com.commafeed.backend.feed.ImageProxyUrl;
import com.commafeed.backend.task.TaskScheduler;
import com.commafeed.security.password.PasswordConstraintValidator;
+
import io.quarkus.runtime.ShutdownEvent;
import io.quarkus.runtime.StartupEvent;
+
import jakarta.enterprise.event.Observes;
import jakarta.inject.Singleton;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
diff --git a/commafeed-server/src/main/java/com/commafeed/CommaFeedConfiguration.java b/commafeed-server/src/main/java/com/commafeed/CommaFeedConfiguration.java
index 0fd8da0f..b5d3b4e9 100644
--- a/commafeed-server/src/main/java/com/commafeed/CommaFeedConfiguration.java
+++ b/commafeed-server/src/main/java/com/commafeed/CommaFeedConfiguration.java
@@ -1,14 +1,17 @@
package com.commafeed;
import com.commafeed.backend.feed.FeedRefreshIntervalCalculator;
+
import io.quarkus.runtime.annotations.ConfigDocSection;
import io.quarkus.runtime.annotations.ConfigPhase;
import io.quarkus.runtime.annotations.ConfigRoot;
import io.quarkus.runtime.configuration.MemorySize;
import io.smallrye.config.ConfigMapping;
import io.smallrye.config.WithDefault;
+
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.Positive;
+
import java.time.Duration;
import java.time.Instant;
import java.util.Optional;
diff --git a/commafeed-server/src/main/java/com/commafeed/CommaFeedProducers.java b/commafeed-server/src/main/java/com/commafeed/CommaFeedProducers.java
index 7b24a0b9..1933463f 100644
--- a/commafeed-server/src/main/java/com/commafeed/CommaFeedProducers.java
+++ b/commafeed-server/src/main/java/com/commafeed/CommaFeedProducers.java
@@ -1,8 +1,10 @@
package com.commafeed;
import com.codahale.metrics.MetricRegistry;
+
import jakarta.enterprise.inject.Produces;
import jakarta.inject.Singleton;
+
import java.time.InstantSource;
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/CommaFeedVersion.java b/commafeed-server/src/main/java/com/commafeed/CommaFeedVersion.java
index 6840325d..fcc83401 100644
--- a/commafeed-server/src/main/java/com/commafeed/CommaFeedVersion.java
+++ b/commafeed-server/src/main/java/com/commafeed/CommaFeedVersion.java
@@ -1,10 +1,12 @@
package com.commafeed;
import jakarta.inject.Singleton;
+
+import lombok.Getter;
+
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
-import lombok.Getter;
@Singleton
@Getter
diff --git a/commafeed-server/src/main/java/com/commafeed/ExceptionMappers.java b/commafeed-server/src/main/java/com/commafeed/ExceptionMappers.java
index ccb2eca9..da6f9c4e 100644
--- a/commafeed-server/src/main/java/com/commafeed/ExceptionMappers.java
+++ b/commafeed-server/src/main/java/com/commafeed/ExceptionMappers.java
@@ -1,14 +1,18 @@
package com.commafeed;
import com.commafeed.security.CookieService;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
import io.quarkus.security.AuthenticationFailedException;
import io.quarkus.security.UnauthorizedException;
+
import jakarta.annotation.Priority;
import jakarta.validation.ValidationException;
import jakarta.ws.rs.core.NewCookie;
import jakarta.ws.rs.ext.Provider;
+
import lombok.RequiredArgsConstructor;
+
import org.jboss.resteasy.reactive.RestResponse;
import org.jboss.resteasy.reactive.RestResponse.ResponseBuilder;
import org.jboss.resteasy.reactive.RestResponse.Status;
diff --git a/commafeed-server/src/main/java/com/commafeed/JacksonCustomizer.java b/commafeed-server/src/main/java/com/commafeed/JacksonCustomizer.java
index 3e985c11..18e8f31a 100644
--- a/commafeed-server/src/main/java/com/commafeed/JacksonCustomizer.java
+++ b/commafeed-server/src/main/java/com/commafeed/JacksonCustomizer.java
@@ -5,8 +5,11 @@ import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
+
import io.quarkus.jackson.ObjectMapperCustomizer;
+
import jakarta.inject.Singleton;
+
import java.util.concurrent.TimeUnit;
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/NativeImageClasses.java b/commafeed-server/src/main/java/com/commafeed/NativeImageClasses.java
index bbe8f03c..9b5d3fff 100644
--- a/commafeed-server/src/main/java/com/commafeed/NativeImageClasses.java
+++ b/commafeed-server/src/main/java/com/commafeed/NativeImageClasses.java
@@ -6,6 +6,7 @@ import com.codahale.metrics.Histogram;
import com.codahale.metrics.Meter;
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.Timer;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
@RegisterForReflection(
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/Digests.java b/commafeed-server/src/main/java/com/commafeed/backend/Digests.java
index 603b50e1..a8a5a7d5 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/Digests.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/Digests.java
@@ -2,9 +2,11 @@ package com.commafeed.backend;
import com.google.common.hash.HashFunction;
import com.google.common.hash.Hashing;
-import java.nio.charset.StandardCharsets;
+
import lombok.experimental.UtilityClass;
+import java.nio.charset.StandardCharsets;
+
@UtilityClass
@SuppressWarnings("deprecation")
public class Digests {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/HttpClientFactory.java b/commafeed-server/src/main/java/com/commafeed/backend/HttpClientFactory.java
index 05e13da7..522eae88 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/HttpClientFactory.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/HttpClientFactory.java
@@ -3,21 +3,18 @@ package com.commafeed.backend;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.CommaFeedVersion;
import com.google.common.net.HttpHeaders;
+
import inet.ipaddr.IPAddress;
import inet.ipaddr.IPAddressNetwork;
import inet.ipaddr.IPAddressString;
+
import jakarta.inject.Singleton;
-import java.net.InetAddress;
-import java.net.URI;
-import java.net.UnknownHostException;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.SequencedMap;
-import java.util.zip.GZIPInputStream;
+
import lombok.RequiredArgsConstructor;
+
import nl.altindag.ssl.SSLFactory;
import nl.altindag.ssl.apache5.util.Apache5SslUtils;
+
import org.apache.hc.client5.http.DnsResolver;
import org.apache.hc.client5.http.SystemDefaultDnsResolver;
import org.apache.hc.client5.http.config.ConnectionConfig;
@@ -42,6 +39,15 @@ import org.apache.hc.core5.util.TimeValue;
import org.apache.hc.core5.util.Timeout;
import org.brotli.dec.BrotliInputStream;
+import java.net.InetAddress;
+import java.net.URI;
+import java.net.UnknownHostException;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.SequencedMap;
+import java.util.zip.GZIPInputStream;
+
@Singleton
@RequiredArgsConstructor
public class HttpClientFactory {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/HttpGetter.java b/commafeed-server/src/main/java/com/commafeed/backend/HttpGetter.java
index 08f43724..9c44c626 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/HttpGetter.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/HttpGetter.java
@@ -8,22 +8,17 @@ import com.google.common.cache.CacheBuilder;
import com.google.common.collect.Iterables;
import com.google.common.io.ByteStreams;
import com.google.common.net.HttpHeaders;
+
import jakarta.inject.Singleton;
import jakarta.ws.rs.core.CacheControl;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.time.Duration;
-import java.time.Instant;
-import java.time.InstantSource;
-import java.util.Optional;
-import java.util.concurrent.ExecutionException;
+
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Lombok;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.hc.client5.http.config.RequestConfig;
@@ -39,6 +34,15 @@ import org.apache.hc.core5.http.io.support.ClassicRequestBuilder;
import org.apache.hc.core5.util.Timeout;
import org.jboss.resteasy.reactive.common.headers.CacheControlDelegate;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URI;
+import java.time.Duration;
+import java.time.Instant;
+import java.time.InstantSource;
+import java.util.Optional;
+import java.util.concurrent.ExecutionException;
+
/** Smart HTTP getter: handles gzip, ssl, last modified and etag headers */
@Singleton
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/Urls.java b/commafeed-server/src/main/java/com/commafeed/backend/Urls.java
index 635356f2..3d50ad47 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/Urls.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/Urls.java
@@ -1,13 +1,15 @@
package com.commafeed.backend;
-import java.net.URI;
-import java.util.regex.Pattern;
import lombok.experimental.UtilityClass;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.Strings;
import org.netpreserve.urlcanon.Canonicalizer;
import org.netpreserve.urlcanon.ParsedUrl;
+import java.net.URI;
+import java.util.regex.Pattern;
+
@UtilityClass
@Slf4j
public class Urls {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedCategoryDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedCategoryDAO.java
index 1282faa5..58bded57 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedCategoryDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedCategoryDAO.java
@@ -5,8 +5,10 @@ import com.commafeed.backend.model.QFeedCategory;
import com.commafeed.backend.model.QUser;
import com.commafeed.backend.model.User;
import com.querydsl.core.types.Predicate;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
import java.util.List;
import java.util.Objects;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedDAO.java
index 281ec8f6..2a9ce5c2 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedDAO.java
@@ -5,11 +5,14 @@ import com.commafeed.backend.model.QFeed;
import com.commafeed.backend.model.QFeedSubscription;
import com.querydsl.jpa.JPAExpressions;
import com.querydsl.jpa.impl.JPAQuery;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
+import org.apache.commons.lang3.Strings;
+
import java.time.Instant;
import java.util.List;
-import org.apache.commons.lang3.Strings;
@Singleton
public class FeedDAO extends GenericDAO {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryContentDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryContentDAO.java
index 46d77147..b1f0a886 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryContentDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryContentDAO.java
@@ -3,8 +3,10 @@ package com.commafeed.backend.dao;
import com.commafeed.backend.model.FeedEntryContent;
import com.commafeed.backend.model.QFeedEntry;
import com.commafeed.backend.model.QFeedEntryContent;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
import java.util.List;
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java
index e1b18758..7e77ae8c 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java
@@ -7,8 +7,10 @@ import com.google.common.collect.Lists;
import com.querydsl.core.Tuple;
import com.querydsl.core.types.dsl.NumberExpression;
import com.querydsl.jpa.impl.JPAQuery;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
import java.time.Instant;
import java.util.ArrayList;
import java.util.HashSet;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java
index 1bc97c31..8e953a24 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java
@@ -21,14 +21,17 @@ import com.querydsl.core.Tuple;
import com.querydsl.core.types.dsl.Expressions;
import com.querydsl.core.types.dsl.NumberExpression;
import com.querydsl.jpa.impl.JPAQuery;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
+import org.apache.commons.collections4.CollectionUtils;
+
import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import org.apache.commons.collections4.CollectionUtils;
@Singleton
public class FeedEntryStatusDAO extends GenericDAO {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryTagDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryTagDAO.java
index 3afd1ad3..807ba986 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryTagDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedEntryTagDAO.java
@@ -4,8 +4,10 @@ import com.commafeed.backend.model.FeedEntry;
import com.commafeed.backend.model.FeedEntryTag;
import com.commafeed.backend.model.QFeedEntryTag;
import com.commafeed.backend.model.User;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedSubscriptionDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedSubscriptionDAO.java
index 22c1e838..d7b32951 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedSubscriptionDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/FeedSubscriptionDAO.java
@@ -8,12 +8,10 @@ import com.commafeed.backend.model.Models;
import com.commafeed.backend.model.QFeedSubscription;
import com.commafeed.backend.model.User;
import com.querydsl.jpa.JPQLQuery;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
-import java.util.List;
-import java.util.Set;
-import java.util.function.Consumer;
-import java.util.stream.Collectors;
+
import org.hibernate.engine.spi.SharedSessionContractImplementor;
import org.hibernate.event.service.spi.EventListenerRegistry;
import org.hibernate.event.spi.EventType;
@@ -21,6 +19,11 @@ import org.hibernate.event.spi.PostCommitInsertEventListener;
import org.hibernate.event.spi.PostInsertEvent;
import org.hibernate.persister.entity.EntityPersister;
+import java.util.List;
+import java.util.Set;
+import java.util.function.Consumer;
+import java.util.stream.Collectors;
+
@Singleton
public class FeedSubscriptionDAO extends GenericDAO {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java
index ea275701..62774147 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java
@@ -6,11 +6,15 @@ import com.querydsl.jpa.impl.JPADeleteClause;
import com.querydsl.jpa.impl.JPAQuery;
import com.querydsl.jpa.impl.JPAQueryFactory;
import com.querydsl.jpa.impl.JPAUpdateClause;
+
import jakarta.persistence.EntityManager;
+
+import lombok.RequiredArgsConstructor;
+
+import org.hibernate.jpa.SpecHints;
+
import java.time.Duration;
import java.util.Collection;
-import lombok.RequiredArgsConstructor;
-import org.hibernate.jpa.SpecHints;
@RequiredArgsConstructor
public abstract class GenericDAO {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/Predicates.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/Predicates.java
index 1b482eb5..c606d10e 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/Predicates.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/Predicates.java
@@ -4,6 +4,7 @@ import com.commafeed.backend.model.QFeedEntry;
import com.commafeed.backend.model.QFeedEntryStatus;
import com.querydsl.core.types.dsl.BooleanExpression;
import com.querydsl.jpa.JPAExpressions;
+
import lombok.experimental.UtilityClass;
@UtilityClass
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java
index b2d22983..e13ac3e0 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java
@@ -1,7 +1,9 @@
package com.commafeed.backend.dao;
import io.quarkus.narayana.jta.QuarkusTransaction;
+
import jakarta.inject.Singleton;
+
import java.util.concurrent.Callable;
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserDAO.java
index ae06f4d6..c1994c44 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserDAO.java
@@ -2,6 +2,7 @@ package com.commafeed.backend.dao;
import com.commafeed.backend.model.QUser;
import com.commafeed.backend.model.User;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserRoleDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserRoleDAO.java
index d582b13d..419ba9e9 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserRoleDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserRoleDAO.java
@@ -4,8 +4,10 @@ import com.commafeed.backend.model.QUserRole;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserRole;
import com.commafeed.backend.model.UserRole.Role;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
+
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserSettingsDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserSettingsDAO.java
index b17aa780..86d693fd 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/dao/UserSettingsDAO.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/UserSettingsDAO.java
@@ -3,6 +3,7 @@ package com.commafeed.backend.dao;
import com.commafeed.backend.model.QUserSettings;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserSettings;
+
import jakarta.inject.Singleton;
import jakarta.persistence.EntityManager;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/FacebookFaviconFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/FacebookFaviconFetcher.java
index 45bf8943..7e4b9478 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/FacebookFaviconFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/FacebookFaviconFetcher.java
@@ -3,15 +3,19 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.annotation.Priority;
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.hc.core5.http.NameValuePair;
+import org.apache.hc.core5.net.URIBuilder;
+
import java.net.URI;
import java.net.URISyntaxException;
import java.util.List;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.hc.core5.http.NameValuePair;
-import org.apache.hc.core5.net.URIBuilder;
@Slf4j
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/Favicon.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/Favicon.java
index 73d267f8..a3cea0b8 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/Favicon.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/Favicon.java
@@ -1,6 +1,7 @@
package com.commafeed.backend.favicon;
import jakarta.ws.rs.core.MediaType;
+
import lombok.extern.slf4j.Slf4j;
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/FeedFaviconFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/FeedFaviconFetcher.java
index 28df4a39..f05cb39d 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/FeedFaviconFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/FeedFaviconFetcher.java
@@ -3,8 +3,10 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.annotation.Priority;
import jakarta.inject.Singleton;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/HtmlFaviconFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/HtmlFaviconFetcher.java
index 7a254f30..0646a1ee 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/HtmlFaviconFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/HtmlFaviconFetcher.java
@@ -3,10 +3,13 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.annotation.Priority;
import jakarta.inject.Singleton;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.StringUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/RootFaviconFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/RootFaviconFetcher.java
index 92439f8a..4e2e6699 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/RootFaviconFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/RootFaviconFetcher.java
@@ -3,12 +3,15 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.annotation.Priority;
import jakarta.inject.Singleton;
-import java.net.URI;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import java.net.URI;
+
/** Fetches favicon from root of the domain (e.g. https://example.com/favicon.ico) */
@Slf4j
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/favicon/YoutubeFaviconFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/favicon/YoutubeFaviconFetcher.java
index 6fd7f841..5ca051d5 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/favicon/YoutubeFaviconFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/favicon/YoutubeFaviconFetcher.java
@@ -10,18 +10,22 @@ import com.commafeed.backend.model.Feed;
import com.fasterxml.jackson.core.JsonPointer;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
+
import jakarta.annotation.Priority;
import jakarta.inject.Singleton;
import jakarta.ws.rs.core.UriBuilder;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.hc.core5.http.NameValuePair;
+import org.apache.hc.core5.net.URIBuilder;
+
import java.io.IOException;
import java.net.URI;
import java.util.List;
import java.util.Optional;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ArrayUtils;
-import org.apache.hc.core5.http.NameValuePair;
-import org.apache.hc.core5.net.URIBuilder;
@Slf4j
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedEntryKeyword.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedEntryKeyword.java
index 2612472c..46c59f15 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedEntryKeyword.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedEntryKeyword.java
@@ -1,8 +1,9 @@
package com.commafeed.backend.feed;
+import org.apache.commons.lang3.StringUtils;
+
import java.util.ArrayList;
import java.util.List;
-import org.apache.commons.lang3.StringUtils;
/** A keyword used in a search query */
public record FeedEntryKeyword(String keyword, Mode mode) {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedFetcher.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedFetcher.java
index 737a8988..1b15597f 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedFetcher.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedFetcher.java
@@ -11,16 +11,21 @@ import com.commafeed.backend.feed.parser.FeedParser;
import com.commafeed.backend.feed.parser.FeedParser.FeedParsingException;
import com.commafeed.backend.feed.parser.FeedParserResult;
import com.commafeed.backend.urlprovider.FeedURLProvider;
+
import io.quarkus.arc.All;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.Strings;
+
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
import java.time.Instant;
import java.util.List;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.Strings;
/** Fetches a feed then parses it */
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshEngine.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshEngine.java
index 9735c209..4f85b3cb 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshEngine.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshEngine.java
@@ -11,7 +11,11 @@ import com.commafeed.backend.model.Feed;
import com.commafeed.backend.model.FeedEntry;
import com.commafeed.backend.model.FeedSubscription;
import com.google.common.util.concurrent.MoreExecutors;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
import java.time.Instant;
import java.util.List;
import java.util.concurrent.BlockingDeque;
@@ -23,7 +27,6 @@ import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.SynchronousQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
-import lombok.extern.slf4j.Slf4j;
@Slf4j
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculator.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculator.java
index 4579e611..6be06867 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculator.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculator.java
@@ -3,12 +3,15 @@ package com.commafeed.backend.feed;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.CommaFeedConfiguration.FeedRefreshErrorHandling;
import com.google.common.primitives.Longs;
+
import jakarta.inject.Singleton;
+
+import org.apache.commons.lang3.ObjectUtils;
+
import java.time.Duration;
import java.time.Instant;
import java.time.InstantSource;
import java.time.temporal.ChronoUnit;
-import org.apache.commons.lang3.ObjectUtils;
@Singleton
public class FeedRefreshIntervalCalculator {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java
index f0c48478..4dde767f 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java
@@ -14,7 +14,13 @@ import com.commafeed.backend.model.Models;
import com.commafeed.backend.service.FeedEntryService;
import com.commafeed.backend.service.FeedService;
import com.google.common.util.concurrent.Striped;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.StringUtils;
+
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
@@ -25,8 +31,6 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.Lock;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
/** Updates the feed in the database and inserts new entries */
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshWorker.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshWorker.java
index c94fb01c..c67b77b5 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshWorker.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshWorker.java
@@ -8,14 +8,18 @@ import com.commafeed.backend.HttpGetter.TooManyRequestsException;
import com.commafeed.backend.feed.FeedFetcher.FeedFetcherResult;
import com.commafeed.backend.feed.parser.FeedParserResult.Entry;
import com.commafeed.backend.model.Feed;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.Strings;
+
import java.time.Duration;
import java.time.Instant;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.Strings;
/**
* Calls {@link FeedFetcher} and updates the Feed object, but does not update the database, ({@link
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUpdateNotifier.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUpdateNotifier.java
index f4be5c88..1e71b295 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUpdateNotifier.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUpdateNotifier.java
@@ -9,11 +9,14 @@ import com.commafeed.backend.model.UserSettings;
import com.commafeed.backend.service.PushNotificationService;
import com.commafeed.frontend.ws.WebSocketMessageBuilder;
import com.commafeed.frontend.ws.WebSocketSessions;
+
import jakarta.inject.Singleton;
-import java.util.List;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import java.util.List;
+
@Slf4j
@Singleton
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUtils.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUtils.java
index 2e002343..691c6bce 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUtils.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedUtils.java
@@ -7,16 +7,19 @@ import com.rometools.rome.feed.synd.SyndContentImpl;
import com.rometools.rome.feed.synd.SyndEnclosureImpl;
import com.rometools.rome.feed.synd.SyndEntry;
import com.rometools.rome.feed.synd.SyndEntryImpl;
-import java.util.Collections;
-import java.util.Date;
+
import lombok.experimental.UtilityClass;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.StringUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
+import java.util.Collections;
+import java.util.Date;
+
/** Utility methods related to feed handling */
@UtilityClass
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/ImageProxyUrl.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/ImageProxyUrl.java
index dacee7bb..253c4ba7 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/ImageProxyUrl.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/ImageProxyUrl.java
@@ -1,15 +1,19 @@
package com.commafeed.backend.feed;
import com.google.common.primitives.Bytes;
+
+import lombok.experimental.UtilityClass;
+
+import org.apache.commons.lang3.RandomUtils;
+
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Base64;
+
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.GCMParameterSpec;
import javax.crypto.spec.SecretKeySpec;
-import lombok.experimental.UtilityClass;
-import org.apache.commons.lang3.RandomUtils;
@UtilityClass
public class ImageProxyUrl {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/EncodingDetector.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/EncodingDetector.java
index e2f727f5..eb9043c7 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/EncodingDetector.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/EncodingDetector.java
@@ -2,11 +2,14 @@ package com.commafeed.backend.feed.parser;
import com.ibm.icu.text.CharsetDetector;
import com.ibm.icu.text.CharsetMatch;
+
import jakarta.inject.Singleton;
-import java.nio.charset.Charset;
+
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.Strings;
+import java.nio.charset.Charset;
+
@Singleton
public class EncodingDetector {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedParser.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedParser.java
index 9304a180..dfe7c20e 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedParser.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedParser.java
@@ -18,7 +18,17 @@ import com.rometools.rome.feed.synd.SyndFeed;
import com.rometools.rome.feed.synd.SyndLink;
import com.rometools.rome.feed.synd.SyndLinkImpl;
import com.rometools.rome.io.SyndFeedInput;
+
import jakarta.inject.Singleton;
+
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.SystemProperties;
+import org.apache.commons.math3.stat.descriptive.SummaryStatistics;
+import org.jdom2.Element;
+import org.jdom2.Namespace;
+import org.xml.sax.InputSource;
+
import java.io.StringReader;
import java.nio.charset.Charset;
import java.text.DateFormat;
@@ -28,13 +38,6 @@ import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
-import org.apache.commons.lang3.ArrayUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.SystemProperties;
-import org.apache.commons.math3.stat.descriptive.SummaryStatistics;
-import org.jdom2.Element;
-import org.jdom2.Namespace;
-import org.xml.sax.InputSource;
/** Parses raw xml into a FeedParserResult object */
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/HtmlEntities.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/HtmlEntities.java
index 7447134d..c8e23097 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/HtmlEntities.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/HtmlEntities.java
@@ -1,10 +1,11 @@
package com.commafeed.backend.feed.parser;
+import lombok.experimental.UtilityClass;
+
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
-import lombok.experimental.UtilityClass;
@UtilityClass
class HtmlEntities {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/TextDirectionDetector.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/TextDirectionDetector.java
index 3205151e..cba4e2eb 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/TextDirectionDetector.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/TextDirectionDetector.java
@@ -1,8 +1,9 @@
package com.commafeed.backend.feed.parser;
+import org.apache.commons.lang3.math.NumberUtils;
+
import java.text.Bidi;
import java.util.regex.Pattern;
-import org.apache.commons.lang3.math.NumberUtils;
public class TextDirectionDetector {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/XMLCleaner.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/XMLCleaner.java
index 8ca46a2f..99b9897e 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/XMLCleaner.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/XMLCleaner.java
@@ -1,13 +1,15 @@
package com.commafeed.backend.feed.parser;
import jakarta.inject.Singleton;
-import java.util.Collection;
-import java.util.regex.Pattern;
+
import org.ahocorasick.trie.Emit;
import org.ahocorasick.trie.Trie;
import org.apache.commons.lang3.StringUtils;
import org.jdom2.Verifier;
+import java.util.Collection;
+import java.util.regex.Pattern;
+
@Singleton
public class XMLCleaner {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/AbstractModel.java b/commafeed-server/src/main/java/com/commafeed/backend/model/AbstractModel.java
index 76eed405..9f187a2f 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/AbstractModel.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/AbstractModel.java
@@ -5,10 +5,12 @@ import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.MappedSuperclass;
import jakarta.persistence.TableGenerator;
-import java.io.Serializable;
+
import lombok.Getter;
import lombok.Setter;
+import java.io.Serializable;
+
/** Abstract model for all entities, defining id and table generator */
@SuppressWarnings("serial")
@MappedSuperclass
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/Feed.java b/commafeed-server/src/main/java/com/commafeed/backend/model/Feed.java
index 34e3d112..3784b80f 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/Feed.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/Feed.java
@@ -4,12 +4,15 @@ import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Lob;
import jakarta.persistence.Table;
-import java.sql.Types;
-import java.time.Instant;
+
import lombok.Getter;
import lombok.Setter;
+
import org.hibernate.annotations.JdbcTypeCode;
+import java.sql.Types;
+import java.time.Instant;
+
@Entity
@Table(name = "FEEDS")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedCategory.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedCategory.java
index d530a998..041f8ad7 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedCategory.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedCategory.java
@@ -6,6 +6,7 @@ import jakarta.persistence.FetchType;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
+
import lombok.Getter;
import lombok.Setter;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntry.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntry.java
index 982f194f..8ac4fb17 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntry.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntry.java
@@ -8,11 +8,13 @@ import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToMany;
import jakarta.persistence.Table;
-import java.time.Instant;
-import java.util.Set;
+
import lombok.Getter;
import lombok.Setter;
+import java.time.Instant;
+import java.util.Set;
+
@Entity
@Table(name = "FEEDENTRIES")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryContent.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryContent.java
index 9c5bdd92..8b5d54c5 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryContent.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryContent.java
@@ -1,18 +1,22 @@
package com.commafeed.backend.model;
import com.fasterxml.jackson.annotation.JsonProperty;
+
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.EnumType;
import jakarta.persistence.Enumerated;
import jakarta.persistence.Lob;
import jakarta.persistence.Table;
-import java.sql.Types;
+
import lombok.Getter;
import lombok.Setter;
+
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.hibernate.annotations.JdbcTypeCode;
+import java.sql.Types;
+
@Entity
@Table(name = "FEEDENTRYCONTENTS")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryStatus.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryStatus.java
index c94bcf73..10749b80 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryStatus.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryStatus.java
@@ -7,11 +7,13 @@ import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import jakarta.persistence.Transient;
+
+import lombok.Getter;
+import lombok.Setter;
+
import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
-import lombok.Getter;
-import lombok.Setter;
@Entity
@Table(name = "FEEDENTRYSTATUSES")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryTag.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryTag.java
index ffb3fd44..bfdec878 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryTag.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedEntryTag.java
@@ -6,6 +6,7 @@ import jakarta.persistence.FetchType;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
+
import lombok.Getter;
import lombok.Setter;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedSubscription.java b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedSubscription.java
index b0a08a4a..d9c674a8 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/FeedSubscription.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/FeedSubscription.java
@@ -8,10 +8,12 @@ import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToMany;
import jakarta.persistence.Table;
-import java.util.Set;
+
import lombok.Getter;
import lombok.Setter;
+import java.util.Set;
+
@Entity
@Table(name = "FEEDSUBSCRIPTIONS")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/Models.java b/commafeed-server/src/main/java/com/commafeed/backend/model/Models.java
index e0ad99d7..17233681 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/Models.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/Models.java
@@ -1,13 +1,15 @@
package com.commafeed.backend.model;
-import java.time.Duration;
-import java.time.Instant;
import lombok.experimental.UtilityClass;
+
import org.hibernate.Hibernate;
import org.hibernate.HibernateException;
import org.hibernate.proxy.HibernateProxy;
import org.hibernate.proxy.LazyInitializer;
+import java.time.Duration;
+import java.time.Instant;
+
@UtilityClass
public class Models {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/User.java b/commafeed-server/src/main/java/com/commafeed/backend/model/User.java
index ebecc611..ac71a6b8 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/User.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/User.java
@@ -4,12 +4,15 @@ import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Lob;
import jakarta.persistence.Table;
-import java.sql.Types;
-import java.time.Instant;
+
import lombok.Getter;
import lombok.Setter;
+
import org.hibernate.annotations.JdbcTypeCode;
+import java.sql.Types;
+import java.time.Instant;
+
@Entity
@Table(name = "USERS")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/UserRole.java b/commafeed-server/src/main/java/com/commafeed/backend/model/UserRole.java
index 222fac28..8503f978 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/UserRole.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/UserRole.java
@@ -8,6 +8,7 @@ import jakarta.persistence.FetchType;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.OneToOne;
import jakarta.persistence.Table;
+
import lombok.Getter;
import lombok.Setter;
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java b/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java
index 7dae8bf0..5783f7f1 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java
@@ -1,6 +1,7 @@
package com.commafeed.backend.model;
import com.fasterxml.jackson.annotation.JsonProperty;
+
import jakarta.persistence.Column;
import jakarta.persistence.Embeddable;
import jakarta.persistence.Embedded;
@@ -12,12 +13,15 @@ import jakarta.persistence.JoinColumn;
import jakarta.persistence.Lob;
import jakarta.persistence.OneToOne;
import jakarta.persistence.Table;
-import java.io.Serializable;
-import java.sql.Types;
+
import lombok.Getter;
import lombok.Setter;
+
import org.hibernate.annotations.JdbcTypeCode;
+import java.io.Serializable;
+import java.sql.Types;
+
@Entity
@Table(name = "USERSETTINGS")
@SuppressWarnings("serial")
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLExporter.java b/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLExporter.java
index 47cad10f..53c7fea3 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLExporter.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLExporter.java
@@ -8,12 +8,16 @@ import com.commafeed.backend.model.User;
import com.rometools.opml.feed.opml.Attribute;
import com.rometools.opml.feed.opml.Opml;
import com.rometools.opml.feed.opml.Outline;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
+import org.apache.commons.lang3.ObjectUtils;
+
import java.util.Comparator;
import java.util.Date;
import java.util.List;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.ObjectUtils;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLImporter.java b/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLImporter.java
index 72584f4a..d10809c0 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLImporter.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/opml/OPMLImporter.java
@@ -10,14 +10,18 @@ import com.rometools.opml.feed.opml.Opml;
import com.rometools.opml.feed.opml.Outline;
import com.rometools.rome.io.FeedException;
import com.rometools.rome.io.WireFeedInput;
+
import jakarta.inject.Singleton;
-import java.io.StringReader;
-import java.util.List;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
+import java.io.StringReader;
+import java.util.List;
+
@Slf4j
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/rome/OPML11Parser.java b/commafeed-server/src/main/java/com/commafeed/backend/rome/OPML11Parser.java
index 7149cd68..0dd4be22 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/rome/OPML11Parser.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/rome/OPML11Parser.java
@@ -3,11 +3,14 @@ package com.commafeed.backend.rome;
import com.rometools.opml.io.impl.OPML10Parser;
import com.rometools.rome.feed.WireFeed;
import com.rometools.rome.io.FeedException;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.util.Locale;
+
import org.jdom2.Document;
import org.jdom2.Element;
+import java.util.Locale;
+
/** Support for OPML 1.1 parsing */
@RegisterForReflection
public class OPML11Parser extends OPML10Parser {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentCleaningService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentCleaningService.java
index 1791762c..eaf83849 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentCleaningService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentCleaningService.java
@@ -2,13 +2,12 @@ package com.commafeed.backend.service;
import com.steadystate.css.parser.CSSOMParser;
import com.steadystate.css.parser.SACParserCSS21;
+
import jakarta.inject.Singleton;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.StringUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
@@ -23,6 +22,11 @@ import org.w3c.css.sac.ErrorHandler;
import org.w3c.css.sac.InputSource;
import org.w3c.dom.css.CSSStyleDeclaration;
+import java.io.StringReader;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
@RequiredArgsConstructor
@Slf4j
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentService.java
index ef723461..f4f69da3 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryContentService.java
@@ -7,11 +7,15 @@ import com.commafeed.backend.feed.parser.FeedParserResult.Content;
import com.commafeed.backend.feed.parser.FeedParserResult.Enclosure;
import com.commafeed.backend.feed.parser.FeedParserResult.Media;
import com.commafeed.backend.model.FeedEntryContent;
+
import jakarta.inject.Singleton;
-import java.util.Optional;
+
import lombok.RequiredArgsConstructor;
+
import org.apache.commons.lang3.StringUtils;
+import java.util.Optional;
+
@RequiredArgsConstructor
@Singleton
public class FeedEntryContentService {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryFilteringService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryFilteringService.java
index 93986083..639bdade 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryFilteringService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryFilteringService.java
@@ -2,6 +2,7 @@ package com.commafeed.backend.service;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.model.FeedEntry;
+
import dev.cel.common.CelAbstractSyntaxTree;
import dev.cel.common.CelValidationException;
import dev.cel.common.types.SimpleType;
@@ -10,7 +11,14 @@ import dev.cel.compiler.CelCompilerFactory;
import dev.cel.runtime.CelEvaluationException;
import dev.cel.runtime.CelRuntime;
import dev.cel.runtime.CelRuntimeFactory;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
+import org.apache.commons.lang3.StringUtils;
+import org.jsoup.Jsoup;
+
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
@@ -19,9 +27,6 @@ import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.StringUtils;
-import org.jsoup.Jsoup;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryService.java
index 55ae282e..c6da5f85 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryService.java
@@ -13,13 +13,16 @@ import com.commafeed.backend.model.FeedEntryStatus;
import com.commafeed.backend.model.FeedSubscription;
import com.commafeed.backend.model.User;
import com.commafeed.backend.service.FeedEntryFilteringService.FeedEntryFilterException;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
import java.time.Instant;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
@Slf4j
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryTagService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryTagService.java
index 2a428fab..580e6a22 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryTagService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedEntryTagService.java
@@ -5,11 +5,14 @@ import com.commafeed.backend.dao.FeedEntryTagDAO;
import com.commafeed.backend.model.FeedEntry;
import com.commafeed.backend.model.FeedEntryTag;
import com.commafeed.backend.model.User;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedFaviconService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedFaviconService.java
index 536e3d4a..a5d1054b 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedFaviconService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedFaviconService.java
@@ -4,15 +4,20 @@ import com.commafeed.backend.favicon.Favicon;
import com.commafeed.backend.favicon.FaviconFetcher;
import com.commafeed.backend.model.Feed;
import com.google.common.io.Resources;
+
import io.quarkus.arc.All;
+
import jakarta.inject.Singleton;
import jakarta.ws.rs.core.MediaType;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.ArrayUtils;
+
import java.io.IOException;
import java.util.List;
import java.util.Objects;
import java.util.Set;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.ArrayUtils;
@Singleton
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java
index 3f76d735..b93c7e98 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java
@@ -6,10 +6,13 @@ import com.commafeed.backend.dao.FeedDAO;
import com.commafeed.backend.feed.FeedUtils;
import com.commafeed.backend.model.Feed;
import com.commafeed.backend.model.Models;
+
import jakarta.inject.Singleton;
-import java.time.Instant;
+
import lombok.RequiredArgsConstructor;
+import java.time.Instant;
+
@Singleton
@RequiredArgsConstructor
public class FeedService {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedSubscriptionService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedSubscriptionService.java
index 14f5c0da..c81ae2c0 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedSubscriptionService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedSubscriptionService.java
@@ -11,12 +11,15 @@ import com.commafeed.backend.model.FeedCategory;
import com.commafeed.backend.model.FeedSubscription;
import com.commafeed.backend.model.User;
import com.commafeed.frontend.model.UnreadCount;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
import java.time.Instant;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import lombok.extern.slf4j.Slf4j;
@Slf4j
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/MailService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/MailService.java
index 825902b6..cd2b93d5 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/MailService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/MailService.java
@@ -1,9 +1,12 @@
package com.commafeed.backend.service;
import com.commafeed.backend.model.User;
+
import io.quarkus.mailer.Mail;
import io.quarkus.mailer.Mailer;
+
import jakarta.inject.Singleton;
+
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/PasswordEncryptionService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/PasswordEncryptionService.java
index 0ab8cd25..8a208021 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/PasswordEncryptionService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/PasswordEncryptionService.java
@@ -1,16 +1,20 @@
package com.commafeed.backend.service;
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.StringUtils;
+
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.security.spec.KeySpec;
+
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.PBEKeySpec;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
// taken from http://www.javacodegeeks.com/2012/05/secure-password-storage-donts-dos-and.html
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/PushNotificationService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/PushNotificationService.java
index 13233f5c..e91fcaf4 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/PushNotificationService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/PushNotificationService.java
@@ -8,13 +8,13 @@ import com.commafeed.backend.Urls;
import com.commafeed.backend.model.FeedEntry;
import com.commafeed.backend.model.FeedSubscription;
import com.commafeed.backend.model.UserSettings.PushNotificationUserSettings;
+
import io.vertx.core.json.JsonObject;
+
import jakarta.inject.Singleton;
-import java.io.IOException;
-import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
-import java.util.List;
+
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.StringUtils;
import org.apache.hc.client5.http.classic.methods.HttpPost;
import org.apache.hc.client5.http.config.RequestConfig;
@@ -26,6 +26,11 @@ import org.apache.hc.core5.http.io.entity.StringEntity;
import org.apache.hc.core5.http.message.BasicNameValuePair;
import org.apache.hc.core5.util.Timeout;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+
@Singleton
@Slf4j
public class PushNotificationService {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/UserService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/UserService.java
index dda4bf8a..475d54ad 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/UserService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/UserService.java
@@ -13,15 +13,19 @@ import com.commafeed.backend.model.UserRole;
import com.commafeed.backend.model.UserRole.Role;
import com.commafeed.backend.service.internal.PostLoginActivities;
import com.google.common.base.Preconditions;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
+import org.apache.commons.lang3.StringUtils;
+
import java.time.Instant;
import java.util.Collection;
import java.util.Collections;
import java.util.Optional;
import java.util.Set;
import java.util.UUID;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.StringUtils;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseCleaningService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseCleaningService.java
index 83cb8407..72d1b89c 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseCleaningService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseCleaningService.java
@@ -11,10 +11,13 @@ import com.commafeed.backend.dao.FeedEntryStatusDAO;
import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.model.AbstractModel;
import com.commafeed.backend.model.Feed;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
import java.time.Instant;
import java.util.List;
-import lombok.extern.slf4j.Slf4j;
/** Contains utility methods for cleaning the database */
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseStartupService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseStartupService.java
index fce5af15..e35dec48 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseStartupService.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/db/DatabaseStartupService.java
@@ -2,12 +2,16 @@ package com.commafeed.backend.service.db;
import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.dao.UserDAO;
+
import jakarta.inject.Singleton;
+
import liquibase.database.Database;
import liquibase.database.core.PostgresDatabase;
import liquibase.structure.DatabaseObject;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.kohsuke.MetaInfServices;
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/internal/PostLoginActivities.java b/commafeed-server/src/main/java/com/commafeed/backend/service/internal/PostLoginActivities.java
index 829a57a3..e1d6b038 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/service/internal/PostLoginActivities.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/service/internal/PostLoginActivities.java
@@ -3,10 +3,13 @@ package com.commafeed.backend.service.internal;
import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.dao.UserDAO;
import com.commafeed.backend.model.User;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.time.Instant;
import java.time.temporal.ChronoUnit;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/AutoMarkAsReadTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/AutoMarkAsReadTask.java
index 363844b6..bf7b449f 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/AutoMarkAsReadTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/AutoMarkAsReadTask.java
@@ -1,10 +1,13 @@
package com.commafeed.backend.task;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
-import java.util.concurrent.TimeUnit;
+
import lombok.RequiredArgsConstructor;
+import java.util.concurrent.TimeUnit;
+
@RequiredArgsConstructor
@Singleton
public class AutoMarkAsReadTask extends ScheduledTask {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/DemoAccountCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/DemoAccountCleanupTask.java
index 6140ffac..79e1e18d 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/DemoAccountCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/DemoAccountCleanupTask.java
@@ -6,11 +6,14 @@ import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.dao.UserDAO;
import com.commafeed.backend.model.User;
import com.commafeed.backend.service.UserService;
+
import jakarta.inject.Singleton;
-import java.util.concurrent.TimeUnit;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import java.util.concurrent.TimeUnit;
+
@RequiredArgsConstructor
@Singleton
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/EntriesExceedingFeedCapacityCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/EntriesExceedingFeedCapacityCleanupTask.java
index 76e40f76..c69824c1 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/EntriesExceedingFeedCapacityCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/EntriesExceedingFeedCapacityCleanupTask.java
@@ -2,10 +2,13 @@ package com.commafeed.backend.task;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
-import java.util.concurrent.TimeUnit;
+
import lombok.RequiredArgsConstructor;
+import java.util.concurrent.TimeUnit;
+
@RequiredArgsConstructor
@Singleton
public class EntriesExceedingFeedCapacityCleanupTask extends ScheduledTask {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/OldEntriesCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/OldEntriesCleanupTask.java
index 78335223..f091967c 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/OldEntriesCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/OldEntriesCleanupTask.java
@@ -2,11 +2,14 @@ package com.commafeed.backend.task;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.time.Duration;
import java.time.Instant;
import java.util.concurrent.TimeUnit;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/OldStatusesCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/OldStatusesCleanupTask.java
index 364b4c71..2556bf80 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/OldStatusesCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/OldStatusesCleanupTask.java
@@ -2,10 +2,13 @@ package com.commafeed.backend.task;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.time.Instant;
import java.util.concurrent.TimeUnit;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedContentsCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedContentsCleanupTask.java
index 9500ca01..5b525de2 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedContentsCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedContentsCleanupTask.java
@@ -1,10 +1,13 @@
package com.commafeed.backend.task;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
-import java.util.concurrent.TimeUnit;
+
import lombok.RequiredArgsConstructor;
+import java.util.concurrent.TimeUnit;
+
@RequiredArgsConstructor
@Singleton
public class OrphanedContentsCleanupTask extends ScheduledTask {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedFeedsCleanupTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedFeedsCleanupTask.java
index 71e6132d..033642ce 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedFeedsCleanupTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/OrphanedFeedsCleanupTask.java
@@ -1,10 +1,13 @@
package com.commafeed.backend.task;
import com.commafeed.backend.service.db.DatabaseCleaningService;
+
import jakarta.inject.Singleton;
-import java.util.concurrent.TimeUnit;
+
import lombok.RequiredArgsConstructor;
+import java.util.concurrent.TimeUnit;
+
@RequiredArgsConstructor
@Singleton
public class OrphanedFeedsCleanupTask extends ScheduledTask {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/ScheduledTask.java b/commafeed-server/src/main/java/com/commafeed/backend/task/ScheduledTask.java
index ef060453..4df34c3b 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/ScheduledTask.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/ScheduledTask.java
@@ -1,8 +1,9 @@
package com.commafeed.backend.task;
+import lombok.extern.slf4j.Slf4j;
+
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
-import lombok.extern.slf4j.Slf4j;
@Slf4j
public abstract class ScheduledTask {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/task/TaskScheduler.java b/commafeed-server/src/main/java/com/commafeed/backend/task/TaskScheduler.java
index a8ece2b3..76ccfb8a 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/task/TaskScheduler.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/task/TaskScheduler.java
@@ -2,12 +2,16 @@ package com.commafeed.backend.task;
import com.commafeed.CommaFeedConfiguration;
import com.google.common.util.concurrent.MoreExecutors;
+
import io.quarkus.arc.All;
+
import jakarta.inject.Singleton;
+
+import lombok.extern.slf4j.Slf4j;
+
import java.util.List;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
-import lombok.extern.slf4j.Slf4j;
@Slf4j
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProvider.java b/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProvider.java
index 1021f176..f7fe7575 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProvider.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProvider.java
@@ -1,11 +1,13 @@
package com.commafeed.backend.urlprovider;
import jakarta.inject.Singleton;
-import java.util.List;
-import java.util.stream.Stream;
+
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
+import java.util.List;
+import java.util.stream.Stream;
+
@Singleton
public class InPageReferenceFeedURLProvider implements FeedURLProvider {
diff --git a/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProvider.java b/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProvider.java
index 5674264a..3db92929 100644
--- a/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProvider.java
+++ b/commafeed-server/src/main/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProvider.java
@@ -1,9 +1,11 @@
package com.commafeed.backend.urlprovider;
import jakarta.inject.Singleton;
-import java.util.List;
+
import org.apache.commons.lang3.Strings;
+import java.util.List;
+
/**
* Workaround for Youtube channels
*
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Category.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Category.java
index d93d6134..d50ed2b9 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Category.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Category.java
@@ -1,11 +1,14 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
+
+import lombok.Data;
+
+import org.eclipse.microprofile.openapi.annotations.media.Schema;
+
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import lombok.Data;
-import org.eclipse.microprofile.openapi.annotations.media.Schema;
@SuppressWarnings("serial")
@Schema(description = "Entry details")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Entries.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Entries.java
index 5856bb9c..5c8c0d5a 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Entries.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Entries.java
@@ -1,11 +1,14 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
+
+import lombok.Data;
+
+import org.eclipse.microprofile.openapi.annotations.media.Schema;
+
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import lombok.Data;
-import org.eclipse.microprofile.openapi.annotations.media.Schema;
@SuppressWarnings("serial")
@Schema(description = "List of entries with some metadata")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Entry.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Entry.java
index 455f9535..2df7afe7 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Entry.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Entry.java
@@ -6,15 +6,19 @@ import com.commafeed.backend.model.FeedEntryContent;
import com.commafeed.backend.model.FeedEntryStatus;
import com.commafeed.backend.model.FeedEntryTag;
import com.commafeed.backend.model.FeedSubscription;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
-import java.time.Instant;
-import java.util.List;
+
import lombok.Data;
+
import org.apache.commons.lang3.Strings;
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+import java.time.Instant;
+import java.util.List;
+
@SuppressWarnings("serial")
@Schema(description = "Entry details")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/FeedInfo.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/FeedInfo.java
index b265a307..59e1b8a1 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/FeedInfo.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/FeedInfo.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Feed details")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/ServerInfo.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/ServerInfo.java
index f0ce520f..07b7cc54 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/ServerInfo.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/ServerInfo.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Server infos")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java
index 8b12c420..6aabc577 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java
@@ -5,11 +5,15 @@ import com.commafeed.backend.model.UserSettings.PushNotificationType;
import com.commafeed.backend.model.UserSettings.ReadingMode;
import com.commafeed.backend.model.UserSettings.ReadingOrder;
import com.commafeed.backend.model.UserSettings.ScrollMode;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "User settings")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Subscription.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Subscription.java
index 4a42c9a7..060d965b 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Subscription.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Subscription.java
@@ -4,13 +4,17 @@ import com.commafeed.backend.feed.FeedUtils;
import com.commafeed.backend.model.Feed;
import com.commafeed.backend.model.FeedCategory;
import com.commafeed.backend.model.FeedSubscription;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
-import java.time.Instant;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+import java.time.Instant;
+
@SuppressWarnings("serial")
@Schema(description = "User information")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/UnreadCount.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/UnreadCount.java
index 493a2510..1b0765df 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/UnreadCount.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/UnreadCount.java
@@ -1,12 +1,15 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
-import java.time.Instant;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+import java.time.Instant;
+
@SuppressWarnings("serial")
@Schema(description = "Unread count")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/UserModel.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/UserModel.java
index 44d24126..6012f368 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/UserModel.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/UserModel.java
@@ -1,12 +1,15 @@
package com.commafeed.frontend.model;
import io.quarkus.runtime.annotations.RegisterForReflection;
-import java.io.Serializable;
-import java.time.Instant;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.enums.SchemaType;
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+import java.time.Instant;
+
@SuppressWarnings("serial")
@Schema(description = "User information")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AddCategoryRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AddCategoryRequest.java
index 2c36bf4a..44bcc337 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AddCategoryRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AddCategoryRequest.java
@@ -2,10 +2,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Add Category Request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AdminSaveUserRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AdminSaveUserRequest.java
index 5f0e41ba..2f07fc74 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AdminSaveUserRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/AdminSaveUserRequest.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model.request;
import com.commafeed.security.password.ValidPassword;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Save User information")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CategoryModificationRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CategoryModificationRequest.java
index e6152263..c2d46885 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CategoryModificationRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CategoryModificationRequest.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Category modification request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CollapseRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CollapseRequest.java
index 27f788c0..ab036f1c 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CollapseRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/CollapseRequest.java
@@ -1,9 +1,11 @@
package com.commafeed.frontend.model.request;
-import java.io.Serializable;
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Mark Request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedInfoRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedInfoRequest.java
index b972ac6e..a70a621f 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedInfoRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedInfoRequest.java
@@ -2,10 +2,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Feed information request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedModificationRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedModificationRequest.java
index 52c283b5..f9752e5c 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedModificationRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/FeedModificationRequest.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Feed modification request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/IDRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/IDRequest.java
index 82c19cb4..39bf9b3d 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/IDRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/IDRequest.java
@@ -1,9 +1,11 @@
package com.commafeed.frontend.model.request;
-import java.io.Serializable;
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/InitialSetupRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/InitialSetupRequest.java
index 389264c2..0e9cdebd 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/InitialSetupRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/InitialSetupRequest.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model.request;
import com.commafeed.security.password.ValidPassword;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Initial admin account setup request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MarkRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MarkRequest.java
index 7a7d1831..08290dd2 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MarkRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MarkRequest.java
@@ -2,10 +2,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
+
+import lombok.Data;
+
+import org.eclipse.microprofile.openapi.annotations.media.Schema;
+
import java.io.Serializable;
import java.util.List;
-import lombok.Data;
-import org.eclipse.microprofile.openapi.annotations.media.Schema;
@SuppressWarnings("serial")
@Schema(description = "Mark Request")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MultipleMarkRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MultipleMarkRequest.java
index ef08ad87..cbebac57 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MultipleMarkRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/MultipleMarkRequest.java
@@ -1,10 +1,13 @@
package com.commafeed.frontend.model.request;
import jakarta.validation.Valid;
+
+import lombok.Data;
+
+import org.eclipse.microprofile.openapi.annotations.media.Schema;
+
import java.io.Serializable;
import java.util.List;
-import lombok.Data;
-import org.eclipse.microprofile.openapi.annotations.media.Schema;
@SuppressWarnings("serial")
@Schema(description = "Multiple Mark Request")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetConfirmationRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetConfirmationRequest.java
index 3fd6b42d..9b01ac26 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetConfirmationRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetConfirmationRequest.java
@@ -1,13 +1,17 @@
package com.commafeed.frontend.model.request;
import com.commafeed.security.password.ValidPassword;
+
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Data
@Schema
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetRequest.java
index d4269072..281443b3 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/PasswordResetRequest.java
@@ -3,10 +3,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Data
@Schema
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/ProfileModificationRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/ProfileModificationRequest.java
index c38c0b95..7ecfe09c 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/ProfileModificationRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/ProfileModificationRequest.java
@@ -1,12 +1,16 @@
package com.commafeed.frontend.model.request;
import com.commafeed.security.password.ValidPassword;
+
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Profile modification request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/RegistrationRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/RegistrationRequest.java
index e7065de4..40235568 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/RegistrationRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/RegistrationRequest.java
@@ -1,13 +1,17 @@
package com.commafeed.frontend.model.request;
import com.commafeed.security.password.ValidPassword;
+
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Data
@Schema
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/StarRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/StarRequest.java
index 3d141e6f..89ac8f8a 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/StarRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/StarRequest.java
@@ -2,10 +2,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Star Request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/SubscribeRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/SubscribeRequest.java
index ce33925f..515ca41e 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/SubscribeRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/SubscribeRequest.java
@@ -2,10 +2,13 @@ package com.commafeed.frontend.model.request;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
-import java.io.Serializable;
+
import lombok.Data;
+
import org.eclipse.microprofile.openapi.annotations.media.Schema;
+import java.io.Serializable;
+
@SuppressWarnings("serial")
@Schema(description = "Subscription request")
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/TagRequest.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/TagRequest.java
index 80a14b3d..87d7a16e 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/model/request/TagRequest.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/request/TagRequest.java
@@ -1,9 +1,11 @@
package com.commafeed.frontend.model.request;
+import lombok.Data;
+
+import org.eclipse.microprofile.openapi.annotations.media.Schema;
+
import java.io.Serializable;
import java.util.List;
-import lombok.Data;
-import org.eclipse.microprofile.openapi.annotations.media.Schema;
@SuppressWarnings("serial")
@Schema(description = "Tag Request")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/AdminREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/AdminREST.java
index 68dc90a3..d39c81af 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/AdminREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/AdminREST.java
@@ -15,6 +15,7 @@ import com.commafeed.security.AuthenticationContext;
import com.commafeed.security.Roles;
import com.google.common.base.Preconditions;
import com.google.common.collect.Sets;
+
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
@@ -28,16 +29,19 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
+
+import lombok.RequiredArgsConstructor;
+
+import org.apache.commons.lang3.StringUtils;
+import org.eclipse.microprofile.openapi.annotations.Operation;
+import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
+import org.eclipse.microprofile.openapi.annotations.tags.Tag;
+
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.StringUtils;
-import org.eclipse.microprofile.openapi.annotations.Operation;
-import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
-import org.eclipse.microprofile.openapi.annotations.tags.Tag;
@Path("/rest/admin")
@RolesAllowed(Roles.ADMIN)
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/CategoryREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/CategoryREST.java
index 812087fd..668d8ac1 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/CategoryREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/CategoryREST.java
@@ -31,6 +31,7 @@ import com.google.common.collect.Lists;
import com.rometools.rome.feed.synd.SyndFeed;
import com.rometools.rome.feed.synd.SyndFeedImpl;
import com.rometools.rome.io.SyndFeedOutput;
+
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
@@ -46,16 +47,10 @@ import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
import jakarta.ws.rs.core.UriInfo;
-import java.io.StringWriter;
-import java.time.Instant;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
@@ -67,6 +62,15 @@ import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
import org.eclipse.microprofile.openapi.annotations.responses.APIResponse;
import org.eclipse.microprofile.openapi.annotations.tags.Tag;
+import java.io.StringWriter;
+import java.time.Instant;
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
@Path("/rest/category")
@RolesAllowed(Roles.USER)
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/EntryREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/EntryREST.java
index 5faa1b08..1f4873c7 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/EntryREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/EntryREST.java
@@ -11,6 +11,7 @@ import com.commafeed.frontend.model.request.TagRequest;
import com.commafeed.security.AuthenticationContext;
import com.commafeed.security.Roles;
import com.google.common.base.Preconditions;
+
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
@@ -22,12 +23,15 @@ import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
-import java.util.List;
+
import lombok.RequiredArgsConstructor;
+
import org.eclipse.microprofile.openapi.annotations.Operation;
import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
import org.eclipse.microprofile.openapi.annotations.tags.Tag;
+import java.util.List;
+
@Path("/rest/entry")
@RolesAllowed(Roles.USER)
@Produces(MediaType.APPLICATION_JSON)
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/FeedREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/FeedREST.java
index 8b938eae..ba4aa9eb 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/FeedREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/FeedREST.java
@@ -47,6 +47,7 @@ import com.rometools.rome.feed.synd.SyndFeedImpl;
import com.rometools.rome.io.FeedException;
import com.rometools.rome.io.SyndFeedOutput;
import com.rometools.rome.io.WireFeedOutput;
+
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
@@ -64,14 +65,10 @@ import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
import jakarta.ws.rs.core.UriInfo;
-import java.io.StringWriter;
-import java.nio.charset.StandardCharsets;
-import java.time.Instant;
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.SystemUtils;
@@ -85,6 +82,13 @@ import org.eclipse.microprofile.openapi.annotations.tags.Tag;
import org.jboss.resteasy.reactive.Cache;
import org.jboss.resteasy.reactive.RestForm;
+import java.io.StringWriter;
+import java.nio.charset.StandardCharsets;
+import java.time.Instant;
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
+
@Path("/rest/feed")
@RolesAllowed(Roles.USER)
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/OpenAPI.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/OpenAPI.java
index ee1a0d14..d4b2172f 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/OpenAPI.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/OpenAPI.java
@@ -1,6 +1,7 @@
package com.commafeed.frontend.resource;
import jakarta.ws.rs.core.Application;
+
import org.eclipse.microprofile.openapi.annotations.OpenAPIDefinition;
import org.eclipse.microprofile.openapi.annotations.enums.SecuritySchemeType;
import org.eclipse.microprofile.openapi.annotations.info.Info;
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/ServerREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/ServerREST.java
index 816f5a26..e8c13269 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/ServerREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/ServerREST.java
@@ -8,6 +8,7 @@ import com.commafeed.backend.feed.ImageProxyUrl;
import com.commafeed.backend.service.db.DatabaseStartupService;
import com.commafeed.frontend.model.ServerInfo;
import com.commafeed.security.Roles;
+
import jakarta.annotation.security.PermitAll;
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
@@ -20,7 +21,9 @@ import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
+
import lombok.RequiredArgsConstructor;
+
import org.eclipse.microprofile.openapi.annotations.Operation;
import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
import org.eclipse.microprofile.openapi.annotations.tags.Tag;
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java
index f05e26b8..6d517cba 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java
@@ -36,6 +36,7 @@ import com.commafeed.frontend.model.request.RegistrationRequest;
import com.commafeed.security.AuthenticationContext;
import com.commafeed.security.Roles;
import com.google.common.base.Preconditions;
+
import jakarta.annotation.security.PermitAll;
import jakarta.annotation.security.RolesAllowed;
import jakarta.inject.Singleton;
@@ -51,6 +52,16 @@ import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.Response.Status;
import jakarta.ws.rs.core.UriInfo;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.hc.core5.net.URIBuilder;
+import org.eclipse.microprofile.openapi.annotations.Operation;
+import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
+import org.eclipse.microprofile.openapi.annotations.tags.Tag;
+
import java.net.URISyntaxException;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
@@ -59,13 +70,6 @@ import java.util.List;
import java.util.Optional;
import java.util.Set;
import java.util.UUID;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.hc.core5.net.URIBuilder;
-import org.eclipse.microprofile.openapi.annotations.Operation;
-import org.eclipse.microprofile.openapi.annotations.parameters.Parameter;
-import org.eclipse.microprofile.openapi.annotations.tags.Tag;
@Path("/rest/user")
@RolesAllowed(Roles.USER)
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverREST.java
index de4af4fb..b52fe7e6 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverREST.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverREST.java
@@ -20,6 +20,7 @@ import com.commafeed.frontend.resource.fever.FeverResponse.FeverFeed;
import com.commafeed.frontend.resource.fever.FeverResponse.FeverFeedGroup;
import com.commafeed.frontend.resource.fever.FeverResponse.FeverGroup;
import com.commafeed.frontend.resource.fever.FeverResponse.FeverItem;
+
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
@@ -33,6 +34,14 @@ import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.MultivaluedMap;
import jakarta.ws.rs.core.UriInfo;
+
+import lombok.RequiredArgsConstructor;
+
+import org.apache.commons.lang3.StringUtils;
+import org.eclipse.microprofile.openapi.annotations.Operation;
+import org.jboss.resteasy.reactive.server.multipart.FormValue;
+import org.jboss.resteasy.reactive.server.multipart.MultipartFormDataInput;
+
import java.time.Instant;
import java.util.ArrayList;
import java.util.Base64;
@@ -45,11 +54,6 @@ import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.StringUtils;
-import org.eclipse.microprofile.openapi.annotations.Operation;
-import org.jboss.resteasy.reactive.server.multipart.FormValue;
-import org.jboss.resteasy.reactive.server.multipart.MultipartFormDataInput;
/**
* Fever-compatible API
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverResponse.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverResponse.java
index 78c571ab..b800809a 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverResponse.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/fever/FeverResponse.java
@@ -13,11 +13,13 @@ import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+
+import lombok.Data;
+
import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import lombok.Data;
@JsonInclude(Include.NON_NULL)
@Data
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomCssServlet.java b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomCssServlet.java
index 01431de4..c9f0213b 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomCssServlet.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomCssServlet.java
@@ -4,12 +4,15 @@ import com.commafeed.backend.dao.UserSettingsDAO;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserSettings;
import com.commafeed.security.AuthenticationContext;
+
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
+
import lombok.RequiredArgsConstructor;
+
import org.eclipse.microprofile.openapi.annotations.Operation;
@Path("/custom_css.css")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomJsServlet.java b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomJsServlet.java
index 6c21823f..b4d44082 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomJsServlet.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/CustomJsServlet.java
@@ -4,12 +4,15 @@ import com.commafeed.backend.dao.UserSettingsDAO;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserSettings;
import com.commafeed.security.AuthenticationContext;
+
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
+
import lombok.RequiredArgsConstructor;
+
import org.eclipse.microprofile.openapi.annotations.Operation;
@Path("/custom_js.js")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/LogoutServlet.java b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/LogoutServlet.java
index b15a3857..69f3a268 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/LogoutServlet.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/LogoutServlet.java
@@ -1,6 +1,7 @@
package com.commafeed.frontend.servlet;
import com.commafeed.security.CookieService;
+
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Singleton;
import jakarta.ws.rs.GET;
@@ -8,7 +9,9 @@ import jakarta.ws.rs.Path;
import jakarta.ws.rs.core.NewCookie;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.UriInfo;
+
import lombok.RequiredArgsConstructor;
+
import org.eclipse.microprofile.openapi.annotations.Operation;
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/NextUnreadServlet.java b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/NextUnreadServlet.java
index c6ac5707..95144d2d 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/NextUnreadServlet.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/NextUnreadServlet.java
@@ -11,6 +11,7 @@ import com.commafeed.backend.model.UserSettings.ReadingOrder;
import com.commafeed.backend.service.FeedEntryService;
import com.commafeed.frontend.resource.CategoryREST;
import com.commafeed.security.AuthenticationContext;
+
import jakarta.inject.Singleton;
import jakarta.transaction.Transactional;
import jakarta.ws.rs.DefaultValue;
@@ -19,12 +20,15 @@ import jakarta.ws.rs.Path;
import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.UriInfo;
-import java.net.URI;
-import java.util.List;
+
import lombok.RequiredArgsConstructor;
+
import org.apache.commons.lang3.StringUtils;
import org.eclipse.microprofile.openapi.annotations.Operation;
+import java.net.URI;
+import java.util.List;
+
@Path("/next")
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/RobotsTxtDisallowAllServlet.java b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/RobotsTxtDisallowAllServlet.java
index a506c049..6e9fbd5d 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/servlet/RobotsTxtDisallowAllServlet.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/servlet/RobotsTxtDisallowAllServlet.java
@@ -1,6 +1,7 @@
package com.commafeed.frontend.servlet;
import com.commafeed.CommaFeedConfiguration;
+
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Singleton;
import jakarta.ws.rs.GET;
@@ -8,7 +9,9 @@ import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
+
import lombok.RequiredArgsConstructor;
+
import org.apache.hc.core5.http.HttpStatus;
import org.eclipse.microprofile.openapi.annotations.Operation;
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketEndpoint.java b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketEndpoint.java
index 73f9450a..b980c7e1 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketEndpoint.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketEndpoint.java
@@ -3,6 +3,7 @@ package com.commafeed.frontend.ws;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.model.User;
import com.commafeed.security.AuthenticationContext;
+
import jakarta.inject.Singleton;
import jakarta.websocket.CloseReason;
import jakarta.websocket.CloseReason.CloseCodes;
@@ -11,10 +12,12 @@ import jakarta.websocket.OnMessage;
import jakarta.websocket.OnOpen;
import jakarta.websocket.Session;
import jakarta.websocket.server.ServerEndpoint;
-import java.io.IOException;
+
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import java.io.IOException;
+
@Slf4j
@Singleton
@ServerEndpoint("/ws")
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketMessageBuilder.java b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketMessageBuilder.java
index 84b72025..0ca53ad0 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketMessageBuilder.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketMessageBuilder.java
@@ -1,6 +1,7 @@
package com.commafeed.frontend.ws;
import com.commafeed.backend.model.FeedSubscription;
+
import lombok.experimental.UtilityClass;
@UtilityClass
diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketSessions.java b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketSessions.java
index 60aa389c..d63dee2a 100644
--- a/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketSessions.java
+++ b/commafeed-server/src/main/java/com/commafeed/frontend/ws/WebSocketSessions.java
@@ -3,12 +3,15 @@ package com.commafeed.frontend.ws;
import com.codahale.metrics.Gauge;
import com.codahale.metrics.MetricRegistry;
import com.commafeed.backend.model.User;
+
import jakarta.inject.Singleton;
import jakarta.websocket.Session;
+
+import lombok.extern.slf4j.Slf4j;
+
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import lombok.extern.slf4j.Slf4j;
@Singleton
@Slf4j
diff --git a/commafeed-server/src/main/java/com/commafeed/security/AuthenticationContext.java b/commafeed-server/src/main/java/com/commafeed/security/AuthenticationContext.java
index 500d8ef4..9c665501 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/AuthenticationContext.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/AuthenticationContext.java
@@ -2,8 +2,11 @@ package com.commafeed.security;
import com.commafeed.backend.dao.UserDAO;
import com.commafeed.backend.model.User;
+
import io.quarkus.security.identity.SecurityIdentity;
+
import jakarta.inject.Singleton;
+
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
diff --git a/commafeed-server/src/main/java/com/commafeed/security/CookieService.java b/commafeed-server/src/main/java/com/commafeed/security/CookieService.java
index 3b60aa65..35fc7f8f 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/CookieService.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/CookieService.java
@@ -1,8 +1,10 @@
package com.commafeed.security;
import io.quarkus.vertx.http.runtime.VertxHttpConfig;
+
import jakarta.inject.Singleton;
import jakarta.ws.rs.core.NewCookie;
+
import java.time.Instant;
import java.util.Date;
diff --git a/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseApiKeyIdentityProvider.java b/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseApiKeyIdentityProvider.java
index 34e0fa36..32727ea8 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseApiKeyIdentityProvider.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseApiKeyIdentityProvider.java
@@ -4,6 +4,7 @@ import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserRole.Role;
import com.commafeed.backend.service.UserService;
+
import io.quarkus.security.AuthenticationFailedException;
import io.quarkus.security.identity.AuthenticationRequestContext;
import io.quarkus.security.identity.IdentityProvider;
@@ -12,11 +13,14 @@ import io.quarkus.security.identity.request.TokenAuthenticationRequest;
import io.quarkus.security.runtime.QuarkusPrincipal;
import io.quarkus.security.runtime.QuarkusSecurityIdentity;
import io.smallrye.mutiny.Uni;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseUsernamePasswordIdentityProvider.java b/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseUsernamePasswordIdentityProvider.java
index 601d2c80..93826dd4 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseUsernamePasswordIdentityProvider.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/identity/DatabaseUsernamePasswordIdentityProvider.java
@@ -4,6 +4,7 @@ import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserRole.Role;
import com.commafeed.backend.service.UserService;
+
import io.quarkus.security.AuthenticationFailedException;
import io.quarkus.security.identity.AuthenticationRequestContext;
import io.quarkus.security.identity.IdentityProvider;
@@ -12,11 +13,14 @@ import io.quarkus.security.identity.request.UsernamePasswordAuthenticationReques
import io.quarkus.security.runtime.QuarkusPrincipal;
import io.quarkus.security.runtime.QuarkusSecurityIdentity;
import io.smallrye.mutiny.Uni;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/security/identity/TrustedIdentityProvider.java b/commafeed-server/src/main/java/com/commafeed/security/identity/TrustedIdentityProvider.java
index 9f5c5def..1d87ef04 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/identity/TrustedIdentityProvider.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/identity/TrustedIdentityProvider.java
@@ -6,6 +6,7 @@ import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserRole.Role;
import com.commafeed.backend.service.UserService;
import com.commafeed.backend.service.internal.PostLoginActivities;
+
import io.quarkus.security.AuthenticationFailedException;
import io.quarkus.security.identity.AuthenticationRequestContext;
import io.quarkus.security.identity.IdentityProvider;
@@ -14,10 +15,13 @@ import io.quarkus.security.identity.request.TrustedAuthenticationRequest;
import io.quarkus.security.runtime.QuarkusPrincipal;
import io.quarkus.security.runtime.QuarkusSecurityIdentity;
import io.smallrye.mutiny.Uni;
+
import jakarta.inject.Singleton;
+
+import lombok.RequiredArgsConstructor;
+
import java.util.Set;
import java.util.stream.Collectors;
-import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Singleton
diff --git a/commafeed-server/src/main/java/com/commafeed/security/mechanism/ApiKeyAuthenticationMecanism.java b/commafeed-server/src/main/java/com/commafeed/security/mechanism/ApiKeyAuthenticationMecanism.java
index f8355dda..3d75b3dc 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/mechanism/ApiKeyAuthenticationMecanism.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/mechanism/ApiKeyAuthenticationMecanism.java
@@ -9,7 +9,9 @@ import io.quarkus.vertx.http.runtime.security.ChallengeData;
import io.quarkus.vertx.http.runtime.security.HttpAuthenticationMechanism;
import io.smallrye.mutiny.Uni;
import io.vertx.ext.web.RoutingContext;
+
import jakarta.inject.Singleton;
+
import java.util.Optional;
import java.util.Set;
diff --git a/commafeed-server/src/main/java/com/commafeed/security/password/PasswordConstraintValidator.java b/commafeed-server/src/main/java/com/commafeed/security/password/PasswordConstraintValidator.java
index d631779e..69ee5658 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/password/PasswordConstraintValidator.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/password/PasswordConstraintValidator.java
@@ -2,8 +2,9 @@ package com.commafeed.security.password;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;
-import java.util.List;
+
import lombok.Setter;
+
import org.apache.commons.lang3.StringUtils;
import org.passay.DefaultPasswordValidator;
import org.passay.PasswordData;
@@ -12,6 +13,8 @@ import org.passay.ValidationResult;
import org.passay.rule.LengthRule;
import org.passay.rule.WhitespaceRule;
+import java.util.List;
+
public class PasswordConstraintValidator implements ConstraintValidator {
@Setter private static int minimumPasswordLength;
diff --git a/commafeed-server/src/main/java/com/commafeed/security/password/ValidPassword.java b/commafeed-server/src/main/java/com/commafeed/security/password/ValidPassword.java
index 0ef051e6..e4092086 100644
--- a/commafeed-server/src/main/java/com/commafeed/security/password/ValidPassword.java
+++ b/commafeed-server/src/main/java/com/commafeed/security/password/ValidPassword.java
@@ -2,6 +2,7 @@ package com.commafeed.security.password;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;
+
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/commafeed-server/src/main/java/com/commafeed/tools/CommaFeedPropertiesGenerator.java b/commafeed-server/src/main/java/com/commafeed/tools/CommaFeedPropertiesGenerator.java
index b2765f45..824fe673 100644
--- a/commafeed-server/src/main/java/com/commafeed/tools/CommaFeedPropertiesGenerator.java
+++ b/commafeed-server/src/main/java/com/commafeed/tools/CommaFeedPropertiesGenerator.java
@@ -1,6 +1,7 @@
package com.commafeed.tools;
import com.commafeed.CommaFeedConfiguration;
+
import io.quarkus.annotation.processor.Outputs;
import io.quarkus.annotation.processor.documentation.config.model.AbstractConfigItem;
import io.quarkus.annotation.processor.documentation.config.model.ConfigProperty;
@@ -9,6 +10,9 @@ import io.quarkus.annotation.processor.documentation.config.model.ConfigSection;
import io.quarkus.annotation.processor.documentation.config.model.JavadocElements;
import io.quarkus.annotation.processor.documentation.config.model.ResolvedModel;
import io.quarkus.annotation.processor.documentation.config.util.JacksonMappers;
+
+import org.apache.commons.io.IOUtils;
+
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -19,7 +23,6 @@ import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
-import org.apache.commons.io.IOUtils;
/**
* This class generates an application.properties file with all the properties from {@link
diff --git a/commafeed-server/src/test/java/com/commafeed/DatabaseReset.java b/commafeed-server/src/test/java/com/commafeed/DatabaseReset.java
index 86fdc0f2..3505d014 100644
--- a/commafeed-server/src/test/java/com/commafeed/DatabaseReset.java
+++ b/commafeed-server/src/test/java/com/commafeed/DatabaseReset.java
@@ -4,8 +4,10 @@ import io.quarkus.runtime.ShutdownEvent;
import io.quarkus.runtime.StartupEvent;
import io.quarkus.test.junit.callback.QuarkusTestBeforeEachCallback;
import io.quarkus.test.junit.callback.QuarkusTestMethodContext;
+
import jakarta.enterprise.inject.spi.CDI;
import jakarta.persistence.EntityManager;
+
import org.hibernate.Session;
import org.kohsuke.MetaInfServices;
diff --git a/commafeed-server/src/test/java/com/commafeed/NativeImageClassesTest.java b/commafeed-server/src/test/java/com/commafeed/NativeImageClassesTest.java
index 7df0a5bc..8bfb430c 100644
--- a/commafeed-server/src/test/java/com/commafeed/NativeImageClassesTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/NativeImageClassesTest.java
@@ -4,17 +4,20 @@ import com.rometools.rome.feed.CopyFrom;
import com.rometools.rome.feed.module.Module;
import com.rometools.rome.io.WireFeedGenerator;
import com.rometools.rome.io.WireFeedParser;
+
import io.quarkus.runtime.annotations.RegisterForReflection;
+
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+import org.reflections.Reflections;
+import org.reflections.scanners.Scanners;
+
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Test;
-import org.reflections.Reflections;
-import org.reflections.scanners.Scanners;
class NativeImageClassesTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/HttpGetterTest.java b/commafeed-server/src/test/java/com/commafeed/backend/HttpGetterTest.java
index 7660ccf5..324e4bf1 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/HttpGetterTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/HttpGetterTest.java
@@ -8,21 +8,9 @@ import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.HttpGetter.NotModifiedException;
import com.commafeed.backend.HttpGetter.TooManyRequestsException;
import com.google.common.net.HttpHeaders;
+
import io.quarkus.runtime.configuration.MemorySize;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.net.NoRouteToHostException;
-import java.net.SocketTimeoutException;
-import java.net.UnknownHostException;
-import java.time.Duration;
-import java.time.Instant;
-import java.util.Arrays;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.zip.DeflaterOutputStream;
-import java.util.zip.GZIPOutputStream;
+
import org.apache.commons.io.IOUtils;
import org.apache.hc.client5.http.ConnectTimeoutException;
import org.apache.hc.core5.http.HttpStatus;
@@ -42,6 +30,21 @@ import org.mockserver.model.HttpRequest;
import org.mockserver.model.HttpResponse;
import org.mockserver.model.MediaType;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.NoRouteToHostException;
+import java.net.SocketTimeoutException;
+import java.net.UnknownHostException;
+import java.time.Duration;
+import java.time.Instant;
+import java.util.Arrays;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.zip.DeflaterOutputStream;
+import java.util.zip.GZIPOutputStream;
+
class HttpGetterTest {
private static final Instant NOW = Instant.now();
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/favicon/FacebookFaviconFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/favicon/FacebookFaviconFetcherTest.java
index 5317e872..5df27749 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/favicon/FacebookFaviconFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/favicon/FacebookFaviconFetcherTest.java
@@ -3,8 +3,9 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.ws.rs.core.MediaType;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -13,6 +14,8 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+
@ExtendWith(MockitoExtension.class)
class FacebookFaviconFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/favicon/FeedFaviconFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/favicon/FeedFaviconFetcherTest.java
index 0d0757d5..dc6eb5f2 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/favicon/FeedFaviconFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/favicon/FeedFaviconFetcherTest.java
@@ -3,8 +3,9 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.ws.rs.core.MediaType;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -13,6 +14,8 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+
@ExtendWith(MockitoExtension.class)
class FeedFaviconFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/favicon/HtmlFaviconFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/favicon/HtmlFaviconFetcherTest.java
index de95d7f3..7b0e5322 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/favicon/HtmlFaviconFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/favicon/HtmlFaviconFetcherTest.java
@@ -3,8 +3,9 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.ws.rs.core.MediaType;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -13,6 +14,8 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+
@ExtendWith(MockitoExtension.class)
class HtmlFaviconFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/favicon/RootFaviconFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/favicon/RootFaviconFetcherTest.java
index 0f77eb55..662361e1 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/favicon/RootFaviconFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/favicon/RootFaviconFetcherTest.java
@@ -3,8 +3,9 @@ package com.commafeed.backend.favicon;
import com.commafeed.backend.HttpGetter;
import com.commafeed.backend.HttpGetter.HttpResult;
import com.commafeed.backend.model.Feed;
+
import jakarta.ws.rs.core.MediaType;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -13,6 +14,8 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+
@ExtendWith(MockitoExtension.class)
class RootFaviconFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/favicon/YoutubeFaviconFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/favicon/YoutubeFaviconFetcherTest.java
index 821fee6a..667b844c 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/favicon/YoutubeFaviconFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/favicon/YoutubeFaviconFetcherTest.java
@@ -7,10 +7,9 @@ import com.commafeed.backend.model.Feed;
import com.fasterxml.jackson.core.JsonPointer;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
+
import jakarta.ws.rs.core.MediaType;
-import java.io.IOException;
-import java.time.Duration;
-import java.util.Optional;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -19,6 +18,10 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.io.IOException;
+import java.time.Duration;
+import java.util.Optional;
+
@ExtendWith(MockitoExtension.class)
class YoutubeFaviconFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedFetcherTest.java b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedFetcherTest.java
index 7298d930..b2010397 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedFetcherTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedFetcherTest.java
@@ -9,9 +9,7 @@ import com.commafeed.backend.feed.parser.FeedParser;
import com.commafeed.backend.feed.parser.FeedParser.FeedParsingException;
import com.commafeed.backend.feed.parser.FeedParserResult;
import com.commafeed.backend.urlprovider.FeedURLProvider;
-import java.time.Duration;
-import java.time.Instant;
-import java.util.List;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -20,6 +18,10 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+import java.time.Instant;
+import java.util.List;
+
@ExtendWith(MockitoExtension.class)
class FeedFetcherTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculatorTest.java b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculatorTest.java
index fdd0e134..b76fa78b 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculatorTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedRefreshIntervalCalculatorTest.java
@@ -2,9 +2,7 @@ package com.commafeed.backend.feed;
import com.commafeed.CommaFeedConfiguration;
import com.commafeed.CommaFeedConfiguration.FeedRefreshErrorHandling;
-import java.time.Duration;
-import java.time.Instant;
-import java.time.InstantSource;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
@@ -16,6 +14,10 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Duration;
+import java.time.Instant;
+import java.time.InstantSource;
+
@ExtendWith(MockitoExtension.class)
class FeedRefreshIntervalCalculatorTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java
index 4297af31..9ecd97b3 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/feed/FeedUtilsTest.java
@@ -2,11 +2,13 @@ package com.commafeed.backend.feed;
import com.commafeed.frontend.model.Entry;
import com.rometools.rome.feed.synd.SyndEntry;
-import java.time.Instant;
-import java.util.Date;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
+import java.time.Instant;
+import java.util.Date;
+
class FeedUtilsTest {
@Test
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLExporterTest.java b/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLExporterTest.java
index af7b8c4d..326dcd2e 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLExporterTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLExporterTest.java
@@ -8,8 +8,7 @@ import com.commafeed.backend.model.FeedSubscription;
import com.commafeed.backend.model.User;
import com.rometools.opml.feed.opml.Opml;
import com.rometools.opml.feed.opml.Outline;
-import java.util.ArrayList;
-import java.util.List;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -18,6 +17,9 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.util.ArrayList;
+import java.util.List;
+
@ExtendWith(MockitoExtension.class)
class OPMLExporterTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLImporterTest.java b/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLImporterTest.java
index e3637f30..074ffafc 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLImporterTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/opml/OPMLImporterTest.java
@@ -6,12 +6,14 @@ import com.commafeed.backend.model.FeedCategory;
import com.commafeed.backend.model.User;
import com.commafeed.backend.service.FeedSubscriptionService;
import com.rometools.rome.io.FeedException;
-import java.io.IOException;
-import java.nio.charset.StandardCharsets;
+
import org.apache.commons.io.IOUtils;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+
class OPMLImporterTest {
@Test
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/FeedEntryFilteringServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/FeedEntryFilteringServiceTest.java
index 654b5f8b..3acb2ddd 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/FeedEntryFilteringServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/FeedEntryFilteringServiceTest.java
@@ -4,13 +4,15 @@ import com.commafeed.CommaFeedConfiguration;
import com.commafeed.backend.model.FeedEntry;
import com.commafeed.backend.model.FeedEntryContent;
import com.commafeed.backend.service.FeedEntryFilteringService.FeedEntryFilterException;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
+import java.time.Duration;
+
class FeedEntryFilteringServiceTest {
private CommaFeedConfiguration config;
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/FeedFaviconServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/FeedFaviconServiceTest.java
index 0bb7f264..68b9cf77 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/FeedFaviconServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/FeedFaviconServiceTest.java
@@ -3,9 +3,9 @@ package com.commafeed.backend.service;
import com.commafeed.backend.favicon.Favicon;
import com.commafeed.backend.favicon.FaviconFetcher;
import com.commafeed.backend.model.Feed;
+
import jakarta.ws.rs.core.MediaType;
-import java.io.IOException;
-import java.util.List;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -14,6 +14,9 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.io.IOException;
+import java.util.List;
+
@ExtendWith(MockitoExtension.class)
class FeedFaviconServiceTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/PasswordEncryptionServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/PasswordEncryptionServiceTest.java
index b3d79eeb..91590c44 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/PasswordEncryptionServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/PasswordEncryptionServiceTest.java
@@ -1,9 +1,10 @@
package com.commafeed.backend.service;
-import java.util.HexFormat;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
+import java.util.HexFormat;
+
class PasswordEncryptionServiceTest {
@Test
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/PushNotificationServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/PushNotificationServiceTest.java
index 25cc38c4..5b8c425b 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/PushNotificationServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/PushNotificationServiceTest.java
@@ -10,7 +10,7 @@ import com.commafeed.backend.model.FeedEntryContent;
import com.commafeed.backend.model.FeedSubscription;
import com.commafeed.backend.model.UserSettings.PushNotificationType;
import com.commafeed.backend.model.UserSettings.PushNotificationUserSettings;
-import java.time.Duration;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -23,6 +23,8 @@ import org.mockserver.model.HttpResponse;
import org.mockserver.model.JsonBody;
import org.mockserver.model.MediaType;
+import java.time.Duration;
+
@ExtendWith(MockServerExtension.class)
class PushNotificationServiceTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/UserServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/UserServiceTest.java
index 27c5bd32..3bd6b92a 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/UserServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/UserServiceTest.java
@@ -8,7 +8,7 @@ import com.commafeed.backend.dao.UserRoleDAO;
import com.commafeed.backend.dao.UserSettingsDAO;
import com.commafeed.backend.model.User;
import com.commafeed.backend.service.internal.PostLoginActivities;
-import java.util.Optional;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -17,6 +17,8 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.util.Optional;
+
@ExtendWith(MockitoExtension.class)
class UserServiceTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/service/db/DatabaseCleaningServiceTest.java b/commafeed-server/src/test/java/com/commafeed/backend/service/db/DatabaseCleaningServiceTest.java
index adabed03..984e8660 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/service/db/DatabaseCleaningServiceTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/service/db/DatabaseCleaningServiceTest.java
@@ -10,12 +10,7 @@ import com.commafeed.backend.dao.FeedEntryDAO.FeedCapacity;
import com.commafeed.backend.dao.FeedEntryStatusDAO;
import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.model.Feed;
-import java.time.Instant;
-import java.time.LocalDate;
-import java.time.ZoneOffset;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.concurrent.Callable;
+
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -23,6 +18,13 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.ZoneOffset;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.concurrent.Callable;
+
@ExtendWith(MockitoExtension.class)
class DatabaseCleaningServiceTest {
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProviderTest.java b/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProviderTest.java
index 20b0a269..509519fc 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProviderTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/InPageReferenceFeedURLProviderTest.java
@@ -1,9 +1,10 @@
package com.commafeed.backend.urlprovider;
-import java.util.List;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
+import java.util.List;
+
class InPageReferenceFeedURLProviderTest {
private final InPageReferenceFeedURLProvider provider = new InPageReferenceFeedURLProvider();
diff --git a/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProviderTest.java b/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProviderTest.java
index c3b926cf..70dc9288 100644
--- a/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProviderTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/backend/urlprovider/YoutubeFeedURLProviderTest.java
@@ -1,9 +1,10 @@
package com.commafeed.backend.urlprovider;
-import java.util.List;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
+import java.util.List;
+
class YoutubeFeedURLProviderTest {
private final YoutubeFeedURLProvider provider = new YoutubeFeedURLProvider();
diff --git a/commafeed-server/src/test/java/com/commafeed/e2e/AuthentificationIT.java b/commafeed-server/src/test/java/com/commafeed/e2e/AuthentificationIT.java
index 9a288b7c..89a8c527 100644
--- a/commafeed-server/src/test/java/com/commafeed/e2e/AuthentificationIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/e2e/AuthentificationIT.java
@@ -5,9 +5,11 @@ import com.microsoft.playwright.BrowserContext;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.assertions.PlaywrightAssertions;
import com.microsoft.playwright.options.AriaRole;
+
import io.quarkiverse.playwright.InjectPlaywright;
import io.quarkiverse.playwright.WithPlaywright;
import io.quarkus.test.junit.QuarkusTest;
+
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/commafeed-server/src/test/java/com/commafeed/e2e/DocumentationIT.java b/commafeed-server/src/test/java/com/commafeed/e2e/DocumentationIT.java
index cdc84917..ffe9c9b3 100644
--- a/commafeed-server/src/test/java/com/commafeed/e2e/DocumentationIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/e2e/DocumentationIT.java
@@ -3,9 +3,11 @@ package com.commafeed.e2e;
import com.microsoft.playwright.BrowserContext;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.assertions.PlaywrightAssertions;
+
import io.quarkiverse.playwright.InjectPlaywright;
import io.quarkiverse.playwright.WithPlaywright;
import io.quarkus.test.junit.QuarkusTest;
+
import org.junit.jupiter.api.Test;
@QuarkusTest
diff --git a/commafeed-server/src/test/java/com/commafeed/e2e/InitialSetupIT.java b/commafeed-server/src/test/java/com/commafeed/e2e/InitialSetupIT.java
index 102834ed..efa68c67 100644
--- a/commafeed-server/src/test/java/com/commafeed/e2e/InitialSetupIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/e2e/InitialSetupIT.java
@@ -5,9 +5,11 @@ import com.microsoft.playwright.BrowserContext;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.assertions.PlaywrightAssertions;
import com.microsoft.playwright.options.AriaRole;
+
import io.quarkiverse.playwright.InjectPlaywright;
import io.quarkiverse.playwright.WithPlaywright;
import io.quarkus.test.junit.QuarkusTest;
+
import org.junit.jupiter.api.Test;
@QuarkusTest
diff --git a/commafeed-server/src/test/java/com/commafeed/e2e/PlaywrightTestUtils.java b/commafeed-server/src/test/java/com/commafeed/e2e/PlaywrightTestUtils.java
index f9f8bcd2..48bca62e 100644
--- a/commafeed-server/src/test/java/com/commafeed/e2e/PlaywrightTestUtils.java
+++ b/commafeed-server/src/test/java/com/commafeed/e2e/PlaywrightTestUtils.java
@@ -5,8 +5,10 @@ import com.commafeed.frontend.model.request.InitialSetupRequest;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Page.GetByRoleOptions;
import com.microsoft.playwright.options.AriaRole;
+
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import lombok.experimental.UtilityClass;
@UtilityClass
diff --git a/commafeed-server/src/test/java/com/commafeed/e2e/ReadingIT.java b/commafeed-server/src/test/java/com/commafeed/e2e/ReadingIT.java
index bab600ca..76f768a1 100644
--- a/commafeed-server/src/test/java/com/commafeed/e2e/ReadingIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/e2e/ReadingIT.java
@@ -7,14 +7,12 @@ import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.assertions.PlaywrightAssertions;
import com.microsoft.playwright.options.AriaRole;
+
import io.quarkiverse.playwright.InjectPlaywright;
import io.quarkiverse.playwright.WithPlaywright;
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
-import java.io.IOException;
-import java.nio.charset.StandardCharsets;
-import java.util.concurrent.TimeUnit;
-import java.util.regex.Pattern;
+
import org.apache.commons.io.IOUtils;
import org.apache.hc.core5.http.HttpStatus;
import org.awaitility.Awaitility;
@@ -26,6 +24,11 @@ import org.mockserver.integration.ClientAndServer;
import org.mockserver.model.HttpRequest;
import org.mockserver.model.HttpResponse;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.concurrent.TimeUnit;
+import java.util.regex.Pattern;
+
@QuarkusTest
@WithPlaywright
class ReadingIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/frontend/ws/WebSocketSessionsTest.java b/commafeed-server/src/test/java/com/commafeed/frontend/ws/WebSocketSessionsTest.java
index 7c327a3d..e6fb0fe8 100644
--- a/commafeed-server/src/test/java/com/commafeed/frontend/ws/WebSocketSessionsTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/frontend/ws/WebSocketSessionsTest.java
@@ -2,7 +2,9 @@ package com.commafeed.frontend.ws;
import com.codahale.metrics.MetricRegistry;
import com.commafeed.backend.model.User;
+
import jakarta.websocket.Session;
+
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/BaseIT.java b/commafeed-server/src/test/java/com/commafeed/integration/BaseIT.java
index 7f1a59e5..c49861c6 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/BaseIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/BaseIT.java
@@ -7,21 +7,18 @@ import com.commafeed.frontend.model.Subscription;
import com.commafeed.frontend.model.request.AddCategoryRequest;
import com.commafeed.frontend.model.request.InitialSetupRequest;
import com.commafeed.frontend.model.request.SubscribeRequest;
+
import io.restassured.RestAssured;
import io.restassured.config.ObjectMapperConfig;
import io.restassured.http.ContentType;
import io.restassured.http.Header;
import io.restassured.mapper.ObjectMapperType;
+
import jakarta.ws.rs.client.Client;
import jakarta.ws.rs.core.HttpHeaders;
-import java.io.IOException;
-import java.net.HttpCookie;
-import java.net.URL;
-import java.nio.charset.StandardCharsets;
-import java.time.Duration;
-import java.util.List;
-import java.util.Objects;
+
import lombok.Getter;
+
import org.apache.commons.io.IOUtils;
import org.apache.hc.core5.http.HttpStatus;
import org.awaitility.Awaitility;
@@ -32,6 +29,14 @@ import org.mockserver.integration.ClientAndServer;
import org.mockserver.model.HttpRequest;
import org.mockserver.model.HttpResponse;
+import java.io.IOException;
+import java.net.HttpCookie;
+import java.net.URL;
+import java.nio.charset.StandardCharsets;
+import java.time.Duration;
+import java.util.List;
+import java.util.Objects;
+
@Getter
public abstract class BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/CompressionIT.java b/commafeed-server/src/test/java/com/commafeed/integration/CompressionIT.java
index 9a1d069c..940316b3 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/CompressionIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/CompressionIT.java
@@ -1,8 +1,10 @@
package com.commafeed.integration;
import com.google.common.net.HttpHeaders;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
+
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/PushNotificationIT.java b/commafeed-server/src/test/java/com/commafeed/integration/PushNotificationIT.java
index 2f4b424d..98e6751a 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/PushNotificationIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/PushNotificationIT.java
@@ -5,11 +5,11 @@ import com.commafeed.backend.model.UserSettings.PushNotificationType;
import com.commafeed.frontend.model.Settings;
import com.commafeed.frontend.model.Subscription;
import com.commafeed.frontend.model.request.FeedModificationRequest;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
-import java.io.IOException;
-import java.time.Duration;
+
import org.apache.hc.core5.http.HttpStatus;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.AfterEach;
@@ -19,6 +19,9 @@ import org.mockserver.model.HttpRequest;
import org.mockserver.model.HttpResponse;
import org.mockserver.verify.VerificationTimes;
+import java.io.IOException;
+import java.time.Duration;
+
@QuarkusTest
class PushNotificationIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/SecurityIT.java b/commafeed-server/src/test/java/com/commafeed/integration/SecurityIT.java
index 4dc64ec5..d6e36fd6 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/SecurityIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/SecurityIT.java
@@ -7,18 +7,22 @@ import com.commafeed.frontend.model.UserModel;
import com.commafeed.frontend.model.request.MarkRequest;
import com.commafeed.frontend.model.request.ProfileModificationRequest;
import com.commafeed.frontend.model.request.SubscribeRequest;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import jakarta.ws.rs.core.HttpHeaders;
-import java.net.HttpCookie;
-import java.util.List;
-import java.util.stream.Collectors;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import java.net.HttpCookie;
+import java.util.List;
+import java.util.stream.Collectors;
+
@QuarkusTest
class SecurityIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/StaticFilesIT.java b/commafeed-server/src/test/java/com/commafeed/integration/StaticFilesIT.java
index 1e7f2b46..470c9e37 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/StaticFilesIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/StaticFilesIT.java
@@ -2,6 +2,7 @@ package com.commafeed.integration;
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
+
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/WebSocketIT.java b/commafeed-server/src/test/java/com/commafeed/integration/WebSocketIT.java
index a9df1588..bcf7ac85 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/WebSocketIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/WebSocketIT.java
@@ -2,9 +2,11 @@ package com.commafeed.integration;
import com.commafeed.TestConstants;
import com.commafeed.frontend.model.request.FeedModificationRequest;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import jakarta.websocket.ClientEndpointConfig;
import jakarta.websocket.CloseReason;
import jakarta.websocket.ContainerProvider;
@@ -13,6 +15,16 @@ import jakarta.websocket.Endpoint;
import jakarta.websocket.EndpointConfig;
import jakarta.websocket.Session;
import jakarta.ws.rs.core.HttpHeaders;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.apache.hc.core5.http.HttpStatus;
+import org.awaitility.Awaitility;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
import java.io.IOException;
import java.net.HttpCookie;
import java.net.URI;
@@ -23,13 +35,6 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.hc.core5.http.HttpStatus;
-import org.awaitility.Awaitility;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
@QuarkusTest
@Slf4j
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/cleanup/DatabaseCleaningIT.java b/commafeed-server/src/test/java/com/commafeed/integration/cleanup/DatabaseCleaningIT.java
index f6391791..296252d0 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/cleanup/DatabaseCleaningIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/cleanup/DatabaseCleaningIT.java
@@ -8,18 +8,22 @@ import com.commafeed.frontend.model.request.FeedModificationRequest;
import com.commafeed.frontend.model.request.StarRequest;
import com.commafeed.frontend.resource.CategoryREST;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import jakarta.inject.Inject;
-import java.time.Duration;
-import java.time.Instant;
+
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
+import java.time.Duration;
+import java.time.Instant;
+
@QuarkusTest
class DatabaseCleaningIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/AdminIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/AdminIT.java
index 510baf1a..ae3d6cfc 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/AdminIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/AdminIT.java
@@ -5,10 +5,11 @@ import com.commafeed.frontend.model.UserModel;
import com.commafeed.frontend.model.request.AdminSaveUserRequest;
import com.commafeed.frontend.model.request.IDRequest;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
-import java.util.List;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
@@ -16,6 +17,8 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
+import java.util.List;
+
@QuarkusTest
class AdminIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/CategoryIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/CategoryIT.java
index c428f668..5452a025 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/CategoryIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/CategoryIT.java
@@ -16,11 +16,11 @@ import com.commafeed.integration.BaseIT;
import com.rometools.rome.feed.synd.SyndFeed;
import com.rometools.rome.io.FeedException;
import com.rometools.rome.io.SyndFeedInput;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
-import java.io.StringReader;
-import java.util.List;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
@@ -29,6 +29,9 @@ import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.xml.sax.InputSource;
+import java.io.StringReader;
+import java.util.List;
+
@QuarkusTest
class CategoryIT extends BaseIT {
@BeforeEach
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/FeedIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/FeedIT.java
index c5bee9c5..56cc8d5c 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/FeedIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/FeedIT.java
@@ -14,19 +14,14 @@ import com.commafeed.integration.BaseIT;
import com.rometools.rome.feed.synd.SyndFeed;
import com.rometools.rome.io.FeedException;
import com.rometools.rome.io.SyndFeedInput;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import jakarta.ws.rs.core.HttpHeaders;
import jakarta.ws.rs.core.MediaType;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.StringReader;
-import java.time.Duration;
-import java.time.Instant;
-import java.time.LocalDate;
-import java.time.ZoneOffset;
-import java.util.Objects;
+
import org.apache.commons.io.IOUtils;
import org.apache.hc.core5.http.HttpStatus;
import org.awaitility.Awaitility;
@@ -37,6 +32,15 @@ import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.xml.sax.InputSource;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.StringReader;
+import java.time.Duration;
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.ZoneOffset;
+import java.util.Objects;
+
@QuarkusTest
class FeedIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/FeverIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/FeverIT.java
index c22df93c..1caf7880 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/FeverIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/FeverIT.java
@@ -9,11 +9,14 @@ import com.commafeed.frontend.model.request.StarRequest;
import com.commafeed.frontend.resource.fever.FeverResponse;
import com.commafeed.frontend.resource.fever.FeverResponse.FeverItem;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.specification.RequestSpecification;
+
import lombok.Setter;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/ServerIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/ServerIT.java
index 75d7e775..c5ae5f82 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/ServerIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/ServerIT.java
@@ -2,8 +2,10 @@ package com.commafeed.integration.rest;
import com.commafeed.frontend.model.ServerInfo;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
+
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/rest/UserIT.java b/commafeed-server/src/test/java/com/commafeed/integration/rest/UserIT.java
index 8e481292..5db0ce1d 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/rest/UserIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/rest/UserIT.java
@@ -5,15 +5,15 @@ import com.commafeed.frontend.model.Settings;
import com.commafeed.frontend.model.request.PasswordResetConfirmationRequest;
import com.commafeed.frontend.model.request.PasswordResetRequest;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.mailer.MockMailbox;
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.vertx.ext.mail.MailMessage;
+
import jakarta.inject.Inject;
-import java.net.URLDecoder;
-import java.nio.charset.StandardCharsets;
-import java.util.List;
+
import org.jsoup.Jsoup;
import org.jsoup.nodes.Element;
import org.junit.jupiter.api.AfterEach;
@@ -21,6 +21,10 @@ import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import java.net.URLDecoder;
+import java.nio.charset.StandardCharsets;
+import java.util.List;
+
@QuarkusTest
class UserIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/servlet/CustomCodeIT.java b/commafeed-server/src/test/java/com/commafeed/integration/servlet/CustomCodeIT.java
index d313b0ae..00309c8d 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/servlet/CustomCodeIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/servlet/CustomCodeIT.java
@@ -3,9 +3,11 @@ package com.commafeed.integration.servlet;
import com.commafeed.TestConstants;
import com.commafeed.frontend.model.Settings;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
+
import org.apache.hc.core5.http.HttpStatus;
import org.hamcrest.CoreMatchers;
import org.junit.jupiter.api.AfterEach;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/servlet/LogoutIT.java b/commafeed-server/src/test/java/com/commafeed/integration/servlet/LogoutIT.java
index 5b83e049..ba0beb5f 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/servlet/LogoutIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/servlet/LogoutIT.java
@@ -2,18 +2,22 @@ package com.commafeed.integration.servlet;
import com.commafeed.TestConstants;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.Headers;
+
import jakarta.ws.rs.core.HttpHeaders;
-import java.net.HttpCookie;
-import java.util.List;
-import java.util.stream.Collectors;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import java.net.HttpCookie;
+import java.util.List;
+import java.util.stream.Collectors;
+
@QuarkusTest
class LogoutIT extends BaseIT {
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/servlet/NextUnreadIT.java b/commafeed-server/src/test/java/com/commafeed/integration/servlet/NextUnreadIT.java
index 42a841a5..49662d70 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/servlet/NextUnreadIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/servlet/NextUnreadIT.java
@@ -2,9 +2,12 @@ package com.commafeed.integration.servlet;
import com.commafeed.TestConstants;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
+
import jakarta.ws.rs.core.HttpHeaders;
+
import org.apache.hc.core5.http.HttpStatus;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
diff --git a/commafeed-server/src/test/java/com/commafeed/integration/servlet/RobotsTxtIT.java b/commafeed-server/src/test/java/com/commafeed/integration/servlet/RobotsTxtIT.java
index f0bfb7f2..0becd418 100644
--- a/commafeed-server/src/test/java/com/commafeed/integration/servlet/RobotsTxtIT.java
+++ b/commafeed-server/src/test/java/com/commafeed/integration/servlet/RobotsTxtIT.java
@@ -1,8 +1,10 @@
package com.commafeed.integration.servlet;
import com.commafeed.integration.BaseIT;
+
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
+
import org.hamcrest.CoreMatchers;
import org.junit.jupiter.api.Test;
diff --git a/commafeed-server/src/test/java/com/commafeed/tools/CommaFeedPropertiesGeneratorTest.java b/commafeed-server/src/test/java/com/commafeed/tools/CommaFeedPropertiesGeneratorTest.java
index 26adcc4d..0ab70ecf 100644
--- a/commafeed-server/src/test/java/com/commafeed/tools/CommaFeedPropertiesGeneratorTest.java
+++ b/commafeed-server/src/test/java/com/commafeed/tools/CommaFeedPropertiesGeneratorTest.java
@@ -1,12 +1,14 @@
package com.commafeed.tools;
import com.google.common.io.Resources;
+
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.URL;
import java.nio.charset.StandardCharsets;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Test;
class CommaFeedPropertiesGeneratorTest {