Enable creating an API using Spring Web #5

Merged
niat8586 merged 39 commits from spring into develop 2024-11-06 11:23:29 +01:00

39 Commits

Author SHA1 Message Date
a7530fa85c Merge branch 'develop' into spring
All checks were successful
Build and test / build-and-test (push) Successful in 6m51s
# Conflicts:
#	core/src/main/java/modules/RepositoryModule.java
#	core/src/main/java/se/su/dsv/scipro/grading/GradingModule.java
#	core/src/main/java/se/su/dsv/scipro/report/GradingReportServiceImpl.java
2024-11-04 09:51:51 +01:00
886a3a8d3d Move integration tests back into the core module
Add the spring-context dependency in core to keep the Spring @Configuration classes in the module as well.

Spring is still well isolated to only those @Configuration classes and the SpringTest base class which is "hidden" via the IntegrationTest subclass.

Some minor @Bean definition juggling had to take place to keep Spring Boot out of core as well as some classes residing in the view module.
2024-10-28 15:36:55 +01:00
a375c711b2 Clean up unused imports 2024-10-28 14:55:26 +01:00
676e6258e3 Add missing @Bean definition 2024-10-28 14:18:41 +01:00
c7a213baca Merge branch 'develop' into spring
# Conflicts:
#	core/src/main/java/se/su/dsv/scipro/checklist/ChecklistCategoryRepo.java
#	core/src/main/java/se/su/dsv/scipro/checklist/ChecklistQuestionRepo.java
#	core/src/main/java/se/su/dsv/scipro/file/FileDescriptionRepo.java
#	core/src/main/java/se/su/dsv/scipro/file/ProjectFileServiceImpl.java
#	core/src/main/java/se/su/dsv/scipro/finalseminar/FinalSeminarOppositionRepo.java
#	core/src/main/java/se/su/dsv/scipro/forum/ForumPostReadStateRepository.java
#	core/src/main/java/se/su/dsv/scipro/forum/ForumPostRepository.java
#	core/src/main/java/se/su/dsv/scipro/forum/GroupThreadRepository.java
#	core/src/main/java/se/su/dsv/scipro/forum/ProjectThreadRepository.java
#	core/src/main/java/se/su/dsv/scipro/integration/activityfinalseminar/ActivityFinalSeminarRepository.java
#	core/src/main/java/se/su/dsv/scipro/match/FirstMeetingRepository.java
#	core/src/main/java/se/su/dsv/scipro/milestones/MilestoneActivityTemplateRepository.java
#	core/src/main/java/se/su/dsv/scipro/milestones/service/impl/MilestonePhaseTemplateServiceImpl.java
#	core/src/main/java/se/su/dsv/scipro/peer/CommentThreadRepo.java
#	core/src/main/java/se/su/dsv/scipro/peer/PeerRequestRepository.java
#	core/src/main/java/se/su/dsv/scipro/project/ProjectRepo.java
#	core/src/main/java/se/su/dsv/scipro/system/FooterAddressRepo.java
#	core/src/main/java/se/su/dsv/scipro/system/FooterLinkRepo.java
#	core/src/main/java/se/su/dsv/scipro/system/PasswordRepo.java
#	core/src/main/java/se/su/dsv/scipro/system/UserRepo.java
2024-10-28 14:05:14 +01:00
612f5c33ac Merge remote-tracking branch 'gitea/develop' into spring 2024-09-09 09:52:52 +02:00
45a2a47068 Merge branch 'develop' into spring
# Conflicts:
#	core/src/main/java/modules/CoreModule.java
2024-07-10 15:04:07 +02:00
77d5fec76e Automatically try to copy the access token to the clipboard 2024-06-12 13:33:48 +02:00
436e004e10 Update PR 2024-06-11 13:45:02 +02:00
15d427fcf8 Protected the API using OAuth 2 as a resource server
See instructions in README.md for how to easily work with it while developing.
2024-06-11 11:47:28 +02:00
a6c2a77e80 Automatically generate OpenAPI specification
Swagger UI available at /api/swagger
Open API specification available at /api/v3/api-docs
2024-06-11 10:31:09 +02:00
136091c364 Stop confusing Spring 2024-06-11 10:06:50 +02:00
92701f0b86 Remove commented out code from before conversion to Spring Boot 2024-06-10 16:25:01 +02:00
97f0d34eb3 Move integration tests to the war module
To enable using the same configuration for both the actual running application and the integration tests. See the TestContext class inside SpringTest for the specific beans that are different in the tests.
2024-06-10 16:21:17 +02:00
e7023e627c Re-organized Spring configuration files 2024-06-10 13:21:38 +02:00
67b596753a Add missing bean definition 2024-06-10 13:11:22 +02:00
08057c2956 More Guice cleanup 2024-06-10 12:30:28 +02:00
89c83ccbd6 Merge remote-tracking branch 'gitea/develop' into spring
# Conflicts:
#	view/src/main/java/se/su/dsv/scipro/crosscutting/CrosscuttingModule.java
2024-06-10 12:29:05 +02:00
9fc7989842 Clean up some testing related changes from the early experimentation 2024-06-04 16:48:02 +02:00
ff44a8c4d7 Remove Guice completely 2024-06-04 16:40:36 +02:00
426fa73e41 Fix broken test 2024-06-04 16:40:10 +02:00
2d356f6173 Added missing bean definitions 2024-06-04 16:25:30 +02:00
6be1fede34 Working Daisy integration 2024-06-03 15:45:05 +02:00
9201191dd8 Schedule the remaining missing workers 2024-06-03 09:33:53 +02:00
3a5b462d2f 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.
2024-05-30 12:51:45 +02:00
bae694b888 Added missing @Bean definitions 2024-05-30 12:36:11 +02:00
b25212efcc Added missing @Transactional 2024-05-30 11:43:07 +02:00
8b2c54505e Switch from class path scanning to explicit bean definitions. 2024-05-30 11:43:07 +02:00
6f31c7698f Worker infrastructure 2024-05-20 16:52:56 +02:00
807d6764af Faster startup time by avoiding class-path scanning
Disables Spring's built-in ServletContainerInitializer which uses WebApplicationInitializer SPI that is discovered via slow class-path scanning. Now directly, and only, call the SpringBootServletInitializer via our own ServletContainerInitializer instead.

Be mindful if, in the future, we rely on other WebApplicationInitializers that will now not be run.
2024-05-16 23:43:21 +02:00
4d96fc4671 Fix view tests 2024-05-16 15:01:54 +02:00
ab3ff83c85 Replace a couple of stray Guice @Inject with Jakarta @Inject 2024-05-16 15:01:33 +02:00
375b9663dc Fix integration tests in core module 2024-05-16 15:01:33 +02:00
0caaa57eff Fix @Transactional annotations 2024-05-15 14:47:54 +02:00
d25539ca4b Bootified the application 2024-05-15 14:25:25 +02:00
f366872737 Move JpaRepository to not confuse Spring Boot 2024-05-15 14:23:13 +02:00
5fca251f88 Spring Security integration 2024-05-14 16:35:03 +02:00
55ee3581f1 Sort of working 2024-05-14 14:33:42 +02:00
f8d65d4821 WIP 2024-05-14 12:15:33 +02:00