1 package fr.tiogars.domaintemplate.config;
2
3 import org.springframework.boot.context.properties.ConfigurationProperties;
4 import org.springframework.validation.annotation.Validated;
5
6 import jakarta.validation.constraints.AssertTrue;
7 import jakarta.validation.constraints.NotBlank;
8 import jakarta.validation.constraints.Positive;
9
10
11 @Validated
12 @ConfigurationProperties(prefix = "app.jwt")
13 public record JwtProperties(
14 @NotBlank String secret,
15 @Positive long expirationSeconds) {
16
17 @AssertTrue(message = "JWT secret must contain at least 32 characters")
18 boolean isSecretLongEnough() {
19 return secret != null && secret.length() >= 32;
20 }
21 }