diff --git a/pom.xml b/pom.xml
index e944ad25..5369b061 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.7.14
+ 3.2.0
net.dancier
@@ -14,8 +14,7 @@
dancer
Demo project for Spring Boot
- 5.8.8
- 17
+ 21
1.15.1
@@ -60,6 +59,11 @@
spring-security-test
test
+
+
+ org.thymeleaf.extras
+ thymeleaf-extras-springsecurity6
+
com.vladmihalcea
hibernate-types-52
@@ -101,6 +105,7 @@
org.projectlombok
lombok
+ true
io.minio
@@ -151,33 +156,13 @@
io.micrometer
micrometer-registry-prometheus
+ runtime
dancer
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 17
- 17
- --enable-preview
-
-
-
- maven-surefire-plugin
-
- --enable-preview
-
-
-
- maven-failsafe-plugin
-
- --enable-preview
-
-
org.jacoco
jacoco-maven-plugin
@@ -201,7 +186,12 @@
org.springframework.boot
spring-boot-maven-plugin
- --enable-preview
+
+
+ org.projectlombok
+ lombok
+
+
diff --git a/src/main/java/net/dancier/dancer/DancerApplication.java b/src/main/java/net/dancier/dancer/DancerApplication.java
index b07e8843..24c05cf8 100644
--- a/src/main/java/net/dancier/dancer/DancerApplication.java
+++ b/src/main/java/net/dancier/dancer/DancerApplication.java
@@ -8,7 +8,7 @@
import org.springframework.data.jpa.convert.threeten.Jsr310JpaConverters;
import org.springframework.scheduling.annotation.EnableScheduling;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import java.util.TimeZone;
@SpringBootApplication
diff --git a/src/main/java/net/dancier/dancer/authentication/AdminUserInitializer.java b/src/main/java/net/dancier/dancer/authentication/AdminUserInitializer.java
index 3a952c4c..67b2c1b3 100644
--- a/src/main/java/net/dancier/dancer/authentication/AdminUserInitializer.java
+++ b/src/main/java/net/dancier/dancer/authentication/AdminUserInitializer.java
@@ -14,8 +14,8 @@
import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Component;
-import javax.annotation.PostConstruct;
-import javax.transaction.Transactional;
+import jakarta.annotation.PostConstruct;
+import jakarta.transaction.Transactional;
import java.util.Collection;
import java.util.Optional;
diff --git a/src/main/java/net/dancier/dancer/authentication/AuthenticationController.java b/src/main/java/net/dancier/dancer/authentication/AuthenticationController.java
index f21fa4de..b39b691d 100644
--- a/src/main/java/net/dancier/dancer/authentication/AuthenticationController.java
+++ b/src/main/java/net/dancier/dancer/authentication/AuthenticationController.java
@@ -27,9 +27,9 @@
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.support.ServletUriComponentsBuilder;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
import java.net.URI;
import java.util.HashMap;
import java.util.Map;
diff --git a/src/main/java/net/dancier/dancer/authentication/dto/RegisterRequestDto.java b/src/main/java/net/dancier/dancer/authentication/dto/RegisterRequestDto.java
index 543ecbba..9f021bac 100644
--- a/src/main/java/net/dancier/dancer/authentication/dto/RegisterRequestDto.java
+++ b/src/main/java/net/dancier/dancer/authentication/dto/RegisterRequestDto.java
@@ -4,7 +4,7 @@
import lombok.Data;
import lombok.NoArgsConstructor;
-import javax.validation.constraints.*;
+import jakarta.validation.constraints.*;
@Data
@AllArgsConstructor
diff --git a/src/main/java/net/dancier/dancer/authentication/dto/SendLinkDto.java b/src/main/java/net/dancier/dancer/authentication/dto/SendLinkDto.java
index f1b12146..99e0e6ae 100644
--- a/src/main/java/net/dancier/dancer/authentication/dto/SendLinkDto.java
+++ b/src/main/java/net/dancier/dancer/authentication/dto/SendLinkDto.java
@@ -3,9 +3,9 @@
import lombok.Data;
import lombok.NoArgsConstructor;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.Size;
@Data
@NoArgsConstructor
diff --git a/src/main/java/net/dancier/dancer/authentication/model/EmailValidationCode.java b/src/main/java/net/dancier/dancer/authentication/model/EmailValidationCode.java
index d15e4a3a..b8e359ce 100644
--- a/src/main/java/net/dancier/dancer/authentication/model/EmailValidationCode.java
+++ b/src/main/java/net/dancier/dancer/authentication/model/EmailValidationCode.java
@@ -2,8 +2,8 @@
import lombok.Data;
-import javax.persistence.*;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.*;
+import jakarta.validation.constraints.NotNull;
import java.time.Instant;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/authentication/model/PasswordResetCode.java b/src/main/java/net/dancier/dancer/authentication/model/PasswordResetCode.java
index 41405d63..ef4169ee 100644
--- a/src/main/java/net/dancier/dancer/authentication/model/PasswordResetCode.java
+++ b/src/main/java/net/dancier/dancer/authentication/model/PasswordResetCode.java
@@ -2,7 +2,7 @@
import lombok.Data;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.time.Instant;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/authentication/model/Role.java b/src/main/java/net/dancier/dancer/authentication/model/Role.java
index b092df7b..726df04f 100644
--- a/src/main/java/net/dancier/dancer/authentication/model/Role.java
+++ b/src/main/java/net/dancier/dancer/authentication/model/Role.java
@@ -1,9 +1,8 @@
package net.dancier.dancer.authentication.model;
+import jakarta.persistence.*;
import lombok.Data;
-import org.hibernate.annotations.NaturalId;
-import javax.persistence.*;
import java.util.UUID;
@Data
diff --git a/src/main/java/net/dancier/dancer/authentication/model/User.java b/src/main/java/net/dancier/dancer/authentication/model/User.java
index 077f5fea..9e4aae11 100644
--- a/src/main/java/net/dancier/dancer/authentication/model/User.java
+++ b/src/main/java/net/dancier/dancer/authentication/model/User.java
@@ -2,11 +2,11 @@
import lombok.Data;
-import javax.persistence.*;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.persistence.*;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
import java.util.Collection;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/authentication/model/VerifiedActionCode.java b/src/main/java/net/dancier/dancer/authentication/model/VerifiedActionCode.java
index 92a8e68a..d30ec3f2 100644
--- a/src/main/java/net/dancier/dancer/authentication/model/VerifiedActionCode.java
+++ b/src/main/java/net/dancier/dancer/authentication/model/VerifiedActionCode.java
@@ -2,8 +2,8 @@
import lombok.Data;
-import javax.persistence.*;
-import javax.validation.constraints.NotNull;
+import jakarta.persistence.*;
+import jakarta.validation.constraints.NotNull;
import java.time.Instant;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/authentication/service/AuthenticationService.java b/src/main/java/net/dancier/dancer/authentication/service/AuthenticationService.java
index 502b30ca..155b9c6c 100644
--- a/src/main/java/net/dancier/dancer/authentication/service/AuthenticationService.java
+++ b/src/main/java/net/dancier/dancer/authentication/service/AuthenticationService.java
@@ -21,8 +21,8 @@
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
-import javax.persistence.EntityNotFoundException;
-import javax.transaction.Transactional;
+import jakarta.persistence.EntityNotFoundException;
+import jakarta.transaction.Transactional;
import java.time.Duration;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
diff --git a/src/main/java/net/dancier/dancer/chat/client/ChatServiceClient.java b/src/main/java/net/dancier/dancer/chat/client/ChatServiceClient.java
index 69b9e9f1..f6f1b392 100644
--- a/src/main/java/net/dancier/dancer/chat/client/ChatServiceClient.java
+++ b/src/main/java/net/dancier/dancer/chat/client/ChatServiceClient.java
@@ -1,12 +1,13 @@
package net.dancier.dancer.chat.client;
import io.netty.handler.logging.LogLevel;
-import net.dancier.dancer.chat.dto.*;
+import net.dancier.dancer.chat.dto.ChatDto;
+import net.dancier.dancer.chat.dto.CreateChatDto;
+import net.dancier.dancer.chat.dto.CreatedChatDto;
+import net.dancier.dancer.chat.dto.MessageDto;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
-import org.springframework.boot.actuate.autoconfigure.metrics.MetricsProperties;
-import org.springframework.http.ResponseEntity;
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
import org.springframework.stereotype.Service;
import org.springframework.web.reactive.function.client.ExchangeFilterFunction;
@@ -16,7 +17,7 @@
import reactor.netty.transport.logging.AdvancedByteBufFormat;
import reactor.util.retry.Retry;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import java.time.Duration;
import java.util.Optional;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/chat/dto/ChatDto.java b/src/main/java/net/dancier/dancer/chat/dto/ChatDto.java
index 7073ebb4..5da1ef38 100644
--- a/src/main/java/net/dancier/dancer/chat/dto/ChatDto.java
+++ b/src/main/java/net/dancier/dancer/chat/dto/ChatDto.java
@@ -1,10 +1,7 @@
package net.dancier.dancer.chat.dto;
-import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
import java.time.OffsetDateTime;
import java.util.List;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/chat/dto/CreateChatDto.java b/src/main/java/net/dancier/dancer/chat/dto/CreateChatDto.java
index e24f3fae..5c34385e 100644
--- a/src/main/java/net/dancier/dancer/chat/dto/CreateChatDto.java
+++ b/src/main/java/net/dancier/dancer/chat/dto/CreateChatDto.java
@@ -2,8 +2,6 @@
import lombok.Data;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
import java.util.List;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/contact/ContactDto.java b/src/main/java/net/dancier/dancer/contact/ContactDto.java
index bf4202a4..72018b59 100644
--- a/src/main/java/net/dancier/dancer/contact/ContactDto.java
+++ b/src/main/java/net/dancier/dancer/contact/ContactDto.java
@@ -2,8 +2,8 @@
import lombok.Data;
-import javax.validation.constraints.Email;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Email;
+import jakarta.validation.constraints.NotNull;
@Data
public class ContactDto {
diff --git a/src/main/java/net/dancier/dancer/core/AppInstanceIdFilter.java b/src/main/java/net/dancier/dancer/core/AppInstanceIdFilter.java
index ae02331e..c6e4d3f7 100644
--- a/src/main/java/net/dancier/dancer/core/AppInstanceIdFilter.java
+++ b/src/main/java/net/dancier/dancer/core/AppInstanceIdFilter.java
@@ -4,10 +4,10 @@
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@Component
diff --git a/src/main/java/net/dancier/dancer/core/ProfileController.java b/src/main/java/net/dancier/dancer/core/ProfileController.java
index 77bb826c..975a4747 100644
--- a/src/main/java/net/dancier/dancer/core/ProfileController.java
+++ b/src/main/java/net/dancier/dancer/core/ProfileController.java
@@ -13,7 +13,7 @@
import org.springframework.security.access.annotation.Secured;
import org.springframework.web.bind.annotation.*;
-import javax.validation.Valid;
+import jakarta.validation.Valid;
import java.util.Map;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/core/config/SecurityConfig.java b/src/main/java/net/dancier/dancer/core/config/SecurityConfig.java
deleted file mode 100644
index 4f7999fd..00000000
--- a/src/main/java/net/dancier/dancer/core/config/SecurityConfig.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package net.dancier.dancer.core.config;
-
-import lombok.RequiredArgsConstructor;
-import net.dancier.dancer.security.CustomUserDetailsServiceImpl;
-import net.dancier.dancer.security.JwtAuthenticationEntryPoint;
-import net.dancier.dancer.security.JwtAuthenticationFilter;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.security.authentication.AuthenticationManager;
-import org.springframework.security.config.BeanIds;
-import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
-import org.springframework.security.config.annotation.web.builders.HttpSecurity;
-import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
-import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
-import org.springframework.security.config.http.SessionCreationPolicy;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.security.crypto.password.PasswordEncoder;
-import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
-
-@Configuration
-@EnableWebSecurity
-@RequiredArgsConstructor
-public class SecurityConfig extends WebSecurityConfigurerAdapter {
-
- private final CustomUserDetailsServiceImpl customUserDetailsService;
-
- private final JwtAuthenticationEntryPoint unauthorizedHandler;
-
- private final JwtAuthenticationFilter jwtAuthenticationFilter;
- @Override
- public void configure(AuthenticationManagerBuilder authenticationManagerBuilder) throws Exception {
- authenticationManagerBuilder
- .userDetailsService(customUserDetailsService)
- .passwordEncoder(passwordEncoder());
- }
-
- @Bean(BeanIds.AUTHENTICATION_MANAGER)
- @Override
- public AuthenticationManager authenticationManagerBean() throws Exception {
- return super.authenticationManagerBean();
- }
-
- @Bean
- public PasswordEncoder passwordEncoder() {
- return new BCryptPasswordEncoder();
- }
-
- @Override
- protected void configure(HttpSecurity http) throws Exception {
- http
- .cors()
- .and()
- .csrf()
- .disable()
- .exceptionHandling()
- .authenticationEntryPoint(unauthorizedHandler)
- .and()
- .sessionManagement()
- .sessionCreationPolicy(SessionCreationPolicy.NEVER)
- .and()
- .authorizeRequests()
- .antMatchers("/authentication/**",
- "/profile/checkDancerNameAvailability/*",
- "/eventlog/**",
- "/actuator/**"
- )
- .permitAll()
- .anyRequest()
- .authenticated();
-
- http.addFilterAfter(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
- }
-}
\ No newline at end of file
diff --git a/src/main/java/net/dancier/dancer/core/config/SecurityConfiguration.java b/src/main/java/net/dancier/dancer/core/config/SecurityConfiguration.java
new file mode 100644
index 00000000..b38dee2e
--- /dev/null
+++ b/src/main/java/net/dancier/dancer/core/config/SecurityConfiguration.java
@@ -0,0 +1,33 @@
+package net.dancier.dancer.core.config;
+
+
+import lombok.RequiredArgsConstructor;
+import net.dancier.dancer.security.CustomUserDetailsService;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.authentication.AuthenticationManager;
+import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.web.SecurityFilterChain;
+
+@Configuration
+@RequiredArgsConstructor
+public class SecurityConfiguration {
+
+ private final CustomUserDetailsService customUserDetailsService;
+
+ @Bean
+ AuthenticationManager authenticationManager() {
+ return null;
+ }
+
+ @Bean
+ SecurityFilterChain filterChain(HttpSecurity httpSecurity) throws Exception {
+ httpSecurity.
+ authorizeHttpRequests(
+ authz -> authz. anyRequest().authenticated()
+ );
+ return httpSecurity.build();
+ }
+
+}
diff --git a/src/main/java/net/dancier/dancer/core/controller/payload/LoginRequestDto.java b/src/main/java/net/dancier/dancer/core/controller/payload/LoginRequestDto.java
index 43ff4f76..28a9371b 100644
--- a/src/main/java/net/dancier/dancer/core/controller/payload/LoginRequestDto.java
+++ b/src/main/java/net/dancier/dancer/core/controller/payload/LoginRequestDto.java
@@ -2,7 +2,7 @@
import lombok.Data;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotBlank;
@Data
public class LoginRequestDto {
diff --git a/src/main/java/net/dancier/dancer/core/dto/ProfileOfCurrentUserDto.java b/src/main/java/net/dancier/dancer/core/dto/ProfileOfCurrentUserDto.java
index 79cfea6f..5e26ec54 100644
--- a/src/main/java/net/dancier/dancer/core/dto/ProfileOfCurrentUserDto.java
+++ b/src/main/java/net/dancier/dancer/core/dto/ProfileOfCurrentUserDto.java
@@ -5,7 +5,6 @@
import net.dancier.dancer.core.model.Gender;
import java.time.LocalDate;
-import java.util.Date;
import java.util.Set;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/core/model/Address.java b/src/main/java/net/dancier/dancer/core/model/Address.java
index 7db142e4..1c56ff3e 100644
--- a/src/main/java/net/dancier/dancer/core/model/Address.java
+++ b/src/main/java/net/dancier/dancer/core/model/Address.java
@@ -1,6 +1,6 @@
package net.dancier.dancer.core.model;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.util.UUID;
@Entity
diff --git a/src/main/java/net/dancier/dancer/core/model/Dance.java b/src/main/java/net/dancier/dancer/core/model/Dance.java
index c3e74fd8..5ef83fee 100644
--- a/src/main/java/net/dancier/dancer/core/model/Dance.java
+++ b/src/main/java/net/dancier/dancer/core/model/Dance.java
@@ -1,11 +1,10 @@
package net.dancier.dancer.core.model;
import lombok.AllArgsConstructor;
-import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.util.UUID;
@Entity
diff --git a/src/main/java/net/dancier/dancer/core/model/DanceProfile.java b/src/main/java/net/dancier/dancer/core/model/DanceProfile.java
index bde01733..df8df8c6 100644
--- a/src/main/java/net/dancier/dancer/core/model/DanceProfile.java
+++ b/src/main/java/net/dancier/dancer/core/model/DanceProfile.java
@@ -3,7 +3,7 @@
import lombok.Data;
import org.hibernate.annotations.Cascade;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.util.UUID;
@Data
diff --git a/src/main/java/net/dancier/dancer/core/model/Dancer.java b/src/main/java/net/dancier/dancer/core/model/Dancer.java
index 0e63a121..a16666ce 100644
--- a/src/main/java/net/dancier/dancer/core/model/Dancer.java
+++ b/src/main/java/net/dancier/dancer/core/model/Dancer.java
@@ -3,7 +3,7 @@
import lombok.Data;
import org.hibernate.annotations.Cascade;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.time.Instant;
import java.time.LocalDate;
import java.util.Date;
diff --git a/src/main/java/net/dancier/dancer/eventlog/controller/EventlogController.java b/src/main/java/net/dancier/dancer/eventlog/controller/EventlogController.java
index c75353f3..cbff4c94 100644
--- a/src/main/java/net/dancier/dancer/eventlog/controller/EventlogController.java
+++ b/src/main/java/net/dancier/dancer/eventlog/controller/EventlogController.java
@@ -47,7 +47,7 @@ private void setRolesAndUser(Eventlog eventlog) {
.collect(Collectors.toSet())
);
}
- case default -> {
+ default -> {
eventlog.setUserId(null);
eventlog.setRoles(Set.of("ROLE_ANONYMOUS"));
}
diff --git a/src/main/java/net/dancier/dancer/eventlog/service/EventlogS3ServiceImpl.java b/src/main/java/net/dancier/dancer/eventlog/service/EventlogS3ServiceImpl.java
index 40517aa2..ec2062b0 100644
--- a/src/main/java/net/dancier/dancer/eventlog/service/EventlogS3ServiceImpl.java
+++ b/src/main/java/net/dancier/dancer/eventlog/service/EventlogS3ServiceImpl.java
@@ -18,7 +18,7 @@
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Service;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
diff --git a/src/main/java/net/dancier/dancer/location/ZipCode.java b/src/main/java/net/dancier/dancer/location/ZipCode.java
index 824648c5..a3b52d6d 100644
--- a/src/main/java/net/dancier/dancer/location/ZipCode.java
+++ b/src/main/java/net/dancier/dancer/location/ZipCode.java
@@ -2,7 +2,7 @@
import lombok.Data;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.util.UUID;
@Data
diff --git a/src/main/java/net/dancier/dancer/mail/configuration/AllForOneMailSender.java b/src/main/java/net/dancier/dancer/mail/configuration/AllForOneMailSender.java
index c358cbd4..eb2f466d 100644
--- a/src/main/java/net/dancier/dancer/mail/configuration/AllForOneMailSender.java
+++ b/src/main/java/net/dancier/dancer/mail/configuration/AllForOneMailSender.java
@@ -1,6 +1,6 @@
package net.dancier.dancer.mail.configuration;
-import org.hibernate.cfg.NotYetImplementedException;
+import org.apache.commons.lang3.NotImplementedException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.mail.MailException;
@@ -9,7 +9,7 @@
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessagePreparator;
-import javax.mail.internet.MimeMessage;
+import jakarta.mail.internet.MimeMessage;
import java.io.InputStream;
import java.util.Properties;
@@ -48,36 +48,36 @@ public void send(SimpleMailMessage simpleMessage) throws MailException {
@Override
public MimeMessage createMimeMessage() {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public MimeMessage createMimeMessage(InputStream contentStream) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessage mimeMessage) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessage... mimeMessages) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessagePreparator mimeMessagePreparator) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessagePreparator... mimeMessagePreparators) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(SimpleMailMessage... simpleMessages) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
}
diff --git a/src/main/java/net/dancier/dancer/mail/configuration/DumpingMailSender.java b/src/main/java/net/dancier/dancer/mail/configuration/DumpingMailSender.java
index 83bfc105..4fd7cf89 100644
--- a/src/main/java/net/dancier/dancer/mail/configuration/DumpingMailSender.java
+++ b/src/main/java/net/dancier/dancer/mail/configuration/DumpingMailSender.java
@@ -1,17 +1,15 @@
package net.dancier.dancer.mail.configuration;
-import org.hibernate.cfg.NotYetImplementedException;
+import jakarta.mail.internet.MimeMessage;
+import org.apache.commons.lang3.NotImplementedException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.mail.MailException;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
-import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessagePreparator;
-import javax.mail.internet.MimeMessage;
import java.io.InputStream;
-import java.util.Properties;
public class DumpingMailSender implements JavaMailSender {
@@ -19,7 +17,7 @@ public class DumpingMailSender implements JavaMailSender {
@Override
public MimeMessage createMimeMessage() {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
@@ -29,31 +27,31 @@ public void send(SimpleMailMessage simpleMessage) throws MailException {
@Override
public MimeMessage createMimeMessage(InputStream contentStream) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessage mimeMessage) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessage... mimeMessages) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessagePreparator mimeMessagePreparator) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(MimeMessagePreparator... mimeMessagePreparators) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
@Override
public void send(SimpleMailMessage... simpleMessages) throws MailException {
- throw new NotYetImplementedException();
+ throw new NotImplementedException();
}
}
diff --git a/src/main/java/net/dancier/dancer/mail/configuration/MailTemplateConfiguration.java b/src/main/java/net/dancier/dancer/mail/configuration/MailTemplateConfiguration.java
index b5b0d13b..718577dc 100644
--- a/src/main/java/net/dancier/dancer/mail/configuration/MailTemplateConfiguration.java
+++ b/src/main/java/net/dancier/dancer/mail/configuration/MailTemplateConfiguration.java
@@ -3,7 +3,7 @@
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.thymeleaf.TemplateEngine;
-import org.thymeleaf.spring5.SpringTemplateEngine;
+import org.thymeleaf.spring6.SpringTemplateEngine;
import org.thymeleaf.templatemode.TemplateMode;
import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;
import org.thymeleaf.templateresolver.ITemplateResolver;
diff --git a/src/main/java/net/dancier/dancer/mail/model/EntityWithUUID.java b/src/main/java/net/dancier/dancer/mail/model/EntityWithUUID.java
index 46ffb764..9785bd3e 100644
--- a/src/main/java/net/dancier/dancer/mail/model/EntityWithUUID.java
+++ b/src/main/java/net/dancier/dancer/mail/model/EntityWithUUID.java
@@ -1,21 +1,13 @@
package net.dancier.dancer.mail.model;
-import com.vladmihalcea.hibernate.type.json.JsonBinaryType;
-import org.hibernate.annotations.Type;
-import org.hibernate.annotations.TypeDef;
-import org.hibernate.annotations.TypeDefs;
+import jakarta.persistence.Id;
+import jakarta.persistence.MappedSuperclass;
-import javax.persistence.Id;
-import javax.persistence.MappedSuperclass;
import java.util.UUID;
@MappedSuperclass
-@TypeDefs({
- @TypeDef(name = "jsonb", typeClass = JsonBinaryType.class)
-})
public class EntityWithUUID {
@Id
- @Type(type = "pg-uuid")
private UUID id;
public EntityWithUUID() {
diff --git a/src/main/java/net/dancier/dancer/mail/model/OutgoingMail.java b/src/main/java/net/dancier/dancer/mail/model/OutgoingMail.java
index 1257e4ba..b4985a04 100644
--- a/src/main/java/net/dancier/dancer/mail/model/OutgoingMail.java
+++ b/src/main/java/net/dancier/dancer/mail/model/OutgoingMail.java
@@ -3,9 +3,12 @@
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
+import org.hibernate.annotations.JdbcTypeCode;
import org.hibernate.annotations.Type;
-import javax.persistence.*;
+import jakarta.persistence.*;
+import org.hibernate.type.SqlTypes;
+
import java.io.Serializable;
@Entity
@@ -18,8 +21,7 @@ public class OutgoingMail extends EntityWithUUID implements Serializable {
private OutgoingMailStatus status;
private Integer retry;
- @Type(type = "jsonb")
- @Column(columnDefinition = "jsonb")
+ @JdbcTypeCode(SqlTypes.JSON)
@Basic(fetch = FetchType.EAGER)
private DancierMailMessage mail;
}
diff --git a/src/main/java/net/dancier/dancer/recommendation/RecommendationService.java b/src/main/java/net/dancier/dancer/recommendation/RecommendationService.java
index ba58250e..f1256c9d 100644
--- a/src/main/java/net/dancier/dancer/recommendation/RecommendationService.java
+++ b/src/main/java/net/dancier/dancer/recommendation/RecommendationService.java
@@ -3,16 +3,12 @@
import lombok.RequiredArgsConstructor;
import net.dancier.dancer.core.DancerRepository;
import net.dancier.dancer.core.model.Dancer;
-import net.dancier.dancer.core.model.Recommendable;
-import net.dancier.dancer.recommendation.dto.RecommendationDto;
import net.dancier.dancer.recommendation.model.BaseRecommendation;
import net.dancier.dancer.recommendation.model.RecommendationWrapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
-import javax.persistence.criteria.CriteriaBuilder;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/recommendation/RecommendationServiceClient.java b/src/main/java/net/dancier/dancer/recommendation/RecommendationServiceClient.java
index 664f7f06..62d5ec1e 100644
--- a/src/main/java/net/dancier/dancer/recommendation/RecommendationServiceClient.java
+++ b/src/main/java/net/dancier/dancer/recommendation/RecommendationServiceClient.java
@@ -7,7 +7,7 @@
import org.springframework.stereotype.Component;
import org.springframework.web.reactive.function.client.WebClient;
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/recommendation/dto/Mapper.java b/src/main/java/net/dancier/dancer/recommendation/dto/Mapper.java
index 8e87c8b7..5ab8bd01 100644
--- a/src/main/java/net/dancier/dancer/recommendation/dto/Mapper.java
+++ b/src/main/java/net/dancier/dancer/recommendation/dto/Mapper.java
@@ -45,7 +45,7 @@ public static ExposedRecommendationDto recommendationWrapper2ExposedRecommendati
dancerPayload.setScore(recommendationWrapper.getScore());
exposedRecommendationDto.setPayload(dancerPayload);
}
- case default -> {
+ default -> {
throw new IllegalStateException();
}
}
diff --git a/src/main/java/net/dancier/dancer/school/School.java b/src/main/java/net/dancier/dancer/school/School.java
index fc552b9b..f54f3cd6 100644
--- a/src/main/java/net/dancier/dancer/school/School.java
+++ b/src/main/java/net/dancier/dancer/school/School.java
@@ -5,7 +5,7 @@
import net.dancier.dancer.core.model.Dance;
import net.dancier.dancer.core.model.Recommendable;
-import javax.persistence.*;
+import jakarta.persistence.*;
import java.util.Set;
import java.util.UUID;
diff --git a/src/main/java/net/dancier/dancer/security/CustomUserDetailsServiceImpl.java b/src/main/java/net/dancier/dancer/security/CustomUserDetailsServiceImpl.java
index 2b2eb6e7..978455b9 100644
--- a/src/main/java/net/dancier/dancer/security/CustomUserDetailsServiceImpl.java
+++ b/src/main/java/net/dancier/dancer/security/CustomUserDetailsServiceImpl.java
@@ -1,16 +1,14 @@
package net.dancier.dancer.security;
+import jakarta.transaction.Transactional;
import lombok.RequiredArgsConstructor;
import net.dancier.dancer.authentication.model.User;
import net.dancier.dancer.authentication.repository.UserRepository;
import net.dancier.dancer.core.DancerRepository;
import net.dancier.dancer.core.model.Dancer;
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
-import javax.transaction.Transactional;
import java.util.UUID;
@Service
diff --git a/src/main/java/net/dancier/dancer/security/JwtAuthenticationEntryPoint.java b/src/main/java/net/dancier/dancer/security/JwtAuthenticationEntryPoint.java
index 49e14c79..bfaf737d 100644
--- a/src/main/java/net/dancier/dancer/security/JwtAuthenticationEntryPoint.java
+++ b/src/main/java/net/dancier/dancer/security/JwtAuthenticationEntryPoint.java
@@ -6,9 +6,9 @@
import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.stereotype.Component;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@Component
@@ -23,4 +23,5 @@ public void commence(HttpServletRequest request,
log.error("Problem while trying to authenticate: " + authException.getMessage());
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, authException.getMessage());
}
+
}
diff --git a/src/main/java/net/dancier/dancer/security/JwtAuthenticationFilter.java b/src/main/java/net/dancier/dancer/security/JwtAuthenticationFilter.java
index e5aeedc1..3aaaf8d2 100644
--- a/src/main/java/net/dancier/dancer/security/JwtAuthenticationFilter.java
+++ b/src/main/java/net/dancier/dancer/security/JwtAuthenticationFilter.java
@@ -14,11 +14,11 @@
import org.springframework.util.StringUtils;
import org.springframework.web.filter.OncePerRequestFilter;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.Cookie;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Collection;
import java.util.List;