From 3a5b462d2fe0b3b2629bc527e0ab096bdd7d6559 Mon Sep 17 00:00:00 2001 From: Andreas Svanberg <andreass@dsv.su.se> Date: Thu, 30 May 2024 12:51:45 +0200 Subject: [PATCH] Enforce injecting dependencies via parameters instead of direct method calling in @Bean definitions. This is done to cause extra pain for classes with too many dependencies in the hopes that it will be re-architectured in a better way with fewer dependencies. --- war/src/main/java/se/su/dsv/scipro/war/ApiConfig.java | 2 +- war/src/main/java/se/su/dsv/scipro/war/CoreConfig.java | 2 +- war/src/main/java/se/su/dsv/scipro/war/MailConfig.java | 2 +- war/src/main/java/se/su/dsv/scipro/war/Main.java | 2 +- .../main/java/se/su/dsv/scipro/war/RepositoryConfiguration.java | 2 +- war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/war/src/main/java/se/su/dsv/scipro/war/ApiConfig.java b/war/src/main/java/se/su/dsv/scipro/war/ApiConfig.java index efef48e1c5..74376a468f 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/ApiConfig.java +++ b/war/src/main/java/se/su/dsv/scipro/war/ApiConfig.java @@ -10,7 +10,7 @@ import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.servlet.util.matcher.MvcRequestMatcher; import org.springframework.web.servlet.handler.HandlerMappingIntrospector; -@Configuration +@Configuration(proxyBeanMethods = false) @ComponentScan("se.su.dsv.scipro.api") public class ApiConfig { @Bean diff --git a/war/src/main/java/se/su/dsv/scipro/war/CoreConfig.java b/war/src/main/java/se/su/dsv/scipro/war/CoreConfig.java index 741f13ba93..de0b76037f 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/CoreConfig.java +++ b/war/src/main/java/se/su/dsv/scipro/war/CoreConfig.java @@ -179,7 +179,7 @@ import se.su.dsv.scipro.workerthreads.WorkerDataServiceImpl; import java.time.Clock; -@Configuration +@Configuration(proxyBeanMethods = false) public class CoreConfig { @Bean public EventBus eventBus() { diff --git a/war/src/main/java/se/su/dsv/scipro/war/MailConfig.java b/war/src/main/java/se/su/dsv/scipro/war/MailConfig.java index 35b7a0ff64..a96c89f56c 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/MailConfig.java +++ b/war/src/main/java/se/su/dsv/scipro/war/MailConfig.java @@ -14,7 +14,7 @@ import se.su.dsv.scipro.profiles.CurrentProfile; import java.util.Properties; -@Configuration +@Configuration(proxyBeanMethods = false) public class MailConfig { @Bean public MailFacade mailFacade() { diff --git a/war/src/main/java/se/su/dsv/scipro/war/Main.java b/war/src/main/java/se/su/dsv/scipro/war/Main.java index 705dff06b5..083ac279c4 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/Main.java +++ b/war/src/main/java/se/su/dsv/scipro/war/Main.java @@ -36,7 +36,7 @@ import java.util.List; import java.util.Optional; import java.util.Set; -@SpringBootApplication +@SpringBootApplication(proxyBeanMethods = false) @EntityScan("se.su.dsv.scipro") @Import({CoreConfig.class, ApiConfig.class, WorkerConfig.class, MailConfig.class, RepositoryConfiguration.class}) public class Main extends SpringBootServletInitializer implements ServletContainerInitializer { diff --git a/war/src/main/java/se/su/dsv/scipro/war/RepositoryConfiguration.java b/war/src/main/java/se/su/dsv/scipro/war/RepositoryConfiguration.java index abd314175e..f984765ff8 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/RepositoryConfiguration.java +++ b/war/src/main/java/se/su/dsv/scipro/war/RepositoryConfiguration.java @@ -50,7 +50,7 @@ import se.su.dsv.scipro.system.FooterLinkRepoImpl; import se.su.dsv.scipro.system.PasswordRepoImpl; import se.su.dsv.scipro.system.UserRepoImpl; -@Configuration +@Configuration(proxyBeanMethods = false) public class RepositoryConfiguration { @Bean public GradingHistoryEventRepositoryImpl gradingHistoryEventRepository(Provider<EntityManager> em) { diff --git a/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java b/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java index 6aab83115e..690774f4ed 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java +++ b/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java @@ -50,7 +50,7 @@ import java.time.Clock; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; -@Configuration +@Configuration(proxyBeanMethods = false) @Import(WorkerConfig.Workers.class) public class WorkerConfig { private static final int NUMBER_OF_WORKER_THREADS = 4;