Skip to content

Commit 9c4b3f3

Browse files
Improvised
1 parent dcccf04 commit 9c4b3f3

14 files changed

+63
-67
lines changed

pom.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>io.github.officiallysingh</groupId>
88
<artifactId>spring-boot-problem-handler</artifactId>
9-
<version>1.1</version>
9+
<version>1.2</version>
1010
<name>spring-boot-problem-handler</name>
1111
<description>Commons exception handler library</description>
1212
<url>https://github.com/officiallysingh/spring-boot-problem-handler</url>
@@ -90,12 +90,10 @@
9090
<dependency>
9191
<groupId>org.apache.commons</groupId>
9292
<artifactId>commons-collections4</artifactId>
93-
<version>${commons-collections4.version}</version>
9493
</dependency>
9594
<dependency>
9695
<groupId>jakarta.annotation</groupId>
9796
<artifactId>jakarta.annotation-api</artifactId>
98-
<version>${jakarta.annotation-api.version}</version>
9997
</dependency>
10098
<dependency>
10199
<groupId>com.google.guava</groupId>
@@ -143,7 +141,6 @@
143141
<dependency>
144142
<groupId>jakarta.servlet</groupId>
145143
<artifactId>jakarta.servlet-api</artifactId>
146-
<version>${jakarta.servlet-api.version}</version>
147144
</dependency>
148145

149146
<dependency>

src/main/java/com/ksoot/problem/Problems.java

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
package com.ksoot.problem;
22

3+
import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
4+
import static org.springframework.http.HttpStatus.NOT_FOUND;
5+
6+
import java.util.Arrays;
7+
import java.util.HashSet;
8+
import java.util.LinkedHashMap;
9+
import java.util.List;
10+
import java.util.Map;
11+
import java.util.Set;
12+
13+
import org.apache.commons.collections4.MapUtils;
14+
import org.apache.commons.lang3.StringUtils;
15+
import org.springframework.context.MessageSourceResolvable;
16+
import org.springframework.http.HttpStatus;
17+
import org.springframework.util.Assert;
18+
319
import com.ksoot.problem.core.ApplicationException;
420
import com.ksoot.problem.core.ApplicationProblem;
521
import com.ksoot.problem.core.GeneralErrorKey;
@@ -11,29 +27,13 @@
1127
import com.ksoot.problem.spring.config.ProblemBeanRegistry;
1228
import com.ksoot.problem.spring.config.ProblemMessageProvider;
1329
import com.ksoot.problem.spring.config.ProblemMessageSourceResolver;
14-
import jakarta.annotation.Nullable;
15-
import org.apache.commons.collections4.MapUtils;
16-
import org.apache.commons.lang3.StringUtils;
17-
import org.springframework.context.MessageSourceResolvable;
18-
import org.springframework.http.HttpStatus;
19-
import org.springframework.util.Assert;
20-
21-
import java.util.Arrays;
22-
import java.util.HashSet;
23-
import java.util.LinkedHashMap;
24-
import java.util.List;
25-
import java.util.Map;
26-
import java.util.Set;
2730

28-
import static com.ksoot.problem.spring.config.ProblemMessageProvider.getMessage;
29-
import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
30-
import static org.springframework.http.HttpStatus.NOT_FOUND;
31+
import jakarta.annotation.Nullable;
32+
import lombok.experimental.UtilityClass;
3133

34+
@UtilityClass
3235
public class Problems {
3336

34-
private Problems() {
35-
throw new IllegalStateException("Problems utility class, not supposed to be instantiated");
36-
}
3737

3838
// ------------------------------- Factory methods -------------------------------------
3939

src/main/java/com/ksoot/problem/core/ProblemUtils.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import com.ksoot.problem.spring.config.ProblemBeanRegistry;
44
import jakarta.annotation.Nullable;
5+
import lombok.experimental.UtilityClass;
6+
57
import org.apache.commons.lang3.exception.ExceptionUtils;
68
import org.springframework.http.HttpStatus;
79
import org.springframework.http.HttpStatusCode;
@@ -17,12 +19,9 @@
1719
/**
1820
* @author Rajveer Singh
1921
*/
22+
@UtilityClass
2023
public class ProblemUtils {
2124

22-
private ProblemUtils() {
23-
throw new IllegalStateException("Just a utility class, not supposed to be instantiated");
24-
}
25-
2625
public static String statusCode(final HttpStatusCode httpStatus) {
2726
return String.valueOf(httpStatus.value());
2827
}

src/main/java/com/ksoot/problem/jackson/HttpMethodDeserializer.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
package com.ksoot.problem.jackson;
22

3+
import java.io.IOException;
4+
5+
import org.springframework.http.HttpMethod;
6+
37
import com.fasterxml.jackson.core.JsonParser;
48
import com.fasterxml.jackson.databind.DeserializationContext;
59
import com.fasterxml.jackson.databind.JsonDeserializer;
6-
import org.springframework.http.HttpMethod;
7-
import org.springframework.http.HttpStatusCode;
8-
9-
import java.io.IOException;
10-
import java.util.Map;
1110

1211
final class HttpMethodDeserializer extends JsonDeserializer<HttpMethod> {
1312

src/main/java/com/ksoot/problem/jackson/HttpMethodSerializer.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package com.ksoot.problem.jackson;
22

3+
import java.io.IOException;
4+
5+
import org.springframework.http.HttpMethod;
6+
37
import com.fasterxml.jackson.core.JsonGenerator;
48
import com.fasterxml.jackson.databind.JsonSerializer;
59
import com.fasterxml.jackson.databind.SerializerProvider;
6-
import org.springframework.http.HttpMethod;
7-
import org.springframework.http.HttpStatusCode;
8-
9-
import java.io.IOException;
1010

1111
final class HttpMethodSerializer extends JsonSerializer<HttpMethod> {
1212

src/main/java/com/ksoot/problem/spring/advice/security/ProblemAccessDeniedHandler.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
package com.ksoot.problem.spring.advice.security;
22

3-
import jakarta.servlet.ServletException;
4-
import jakarta.servlet.http.HttpServletRequest;
5-
import jakarta.servlet.http.HttpServletResponse;
6-
import org.springframework.beans.factory.annotation.Autowired;
3+
import java.io.IOException;
4+
75
import org.springframework.beans.factory.annotation.Qualifier;
86
import org.springframework.security.access.AccessDeniedException;
97
import org.springframework.security.web.AuthenticationEntryPoint;
108
import org.springframework.security.web.access.AccessDeniedHandler;
119
import org.springframework.web.servlet.HandlerExceptionResolver;
1210
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
1311

14-
import java.io.IOException;
12+
import jakarta.servlet.ServletException;
13+
import jakarta.servlet.http.HttpServletRequest;
14+
import jakarta.servlet.http.HttpServletResponse;
1515

1616
/**
1717
* A compound {@link AuthenticationEntryPoint} and {@link AccessDeniedHandler}
@@ -24,7 +24,6 @@ public class ProblemAccessDeniedHandler implements AccessDeniedHandler {
2424

2525
private final HandlerExceptionResolver resolver;
2626

27-
@Autowired
2827
public ProblemAccessDeniedHandler(@Qualifier("handlerExceptionResolver") final HandlerExceptionResolver resolver) {
2928
this.resolver = resolver;
3029
}

src/main/java/com/ksoot/problem/spring/advice/security/ProblemAuthenticationEntryPoint.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
package com.ksoot.problem.spring.advice.security;
22

3-
import jakarta.servlet.http.HttpServletRequest;
4-
import jakarta.servlet.http.HttpServletResponse;
5-
import org.springframework.beans.factory.annotation.Autowired;
63
import org.springframework.beans.factory.annotation.Qualifier;
74
import org.springframework.security.core.AuthenticationException;
85
import org.springframework.security.web.AuthenticationEntryPoint;
96
import org.springframework.security.web.access.AccessDeniedHandler;
107
import org.springframework.web.servlet.HandlerExceptionResolver;
118
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
129

10+
import jakarta.servlet.http.HttpServletRequest;
11+
import jakarta.servlet.http.HttpServletResponse;
12+
1313
/**
1414
* A compound {@link AuthenticationEntryPoint} and {@link AccessDeniedHandler}
1515
* that delegates exceptions to Spring WebMVC's {@link HandlerExceptionResolver}
@@ -21,7 +21,6 @@ public class ProblemAuthenticationEntryPoint implements AuthenticationEntryPoint
2121

2222
private final HandlerExceptionResolver resolver;
2323

24-
@Autowired
2524
public ProblemAuthenticationEntryPoint(@Qualifier("handlerExceptionResolver") final HandlerExceptionResolver resolver) {
2625
this.resolver = resolver;
2726
}

src/main/java/com/ksoot/problem/spring/advice/security/ProblemServerAccessDeniedHandler.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package com.ksoot.problem.spring.advice.security;
22

3-
import com.fasterxml.jackson.databind.ObjectMapper;
4-
import com.ksoot.problem.spring.advice.security.SecurityAdviceTraits;
5-
import com.ksoot.problem.spring.advice.webflux.SpringWebfluxProblemResponseUtils;
6-
import lombok.RequiredArgsConstructor;
73
import org.springframework.http.ProblemDetail;
84
import org.springframework.http.ResponseEntity;
95
import org.springframework.security.access.AccessDeniedException;
106
import org.springframework.security.web.server.authorization.ServerAccessDeniedHandler;
117
import org.springframework.web.server.ServerWebExchange;
8+
9+
import com.fasterxml.jackson.databind.ObjectMapper;
10+
import com.ksoot.problem.spring.advice.webflux.SpringWebfluxProblemResponseUtils;
11+
12+
import lombok.RequiredArgsConstructor;
1213
import reactor.core.publisher.Mono;
1314

1415
@RequiredArgsConstructor

src/main/java/com/ksoot/problem/spring/advice/security/ProblemServerAuthenticationEntryPoint.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package com.ksoot.problem.spring.advice.security;
22

3-
import com.fasterxml.jackson.databind.ObjectMapper;
4-
import com.ksoot.problem.spring.advice.security.SecurityAdviceTraits;
5-
import com.ksoot.problem.spring.advice.webflux.SpringWebfluxProblemResponseUtils;
6-
import lombok.RequiredArgsConstructor;
73
import org.springframework.http.ProblemDetail;
84
import org.springframework.http.ResponseEntity;
95
import org.springframework.security.core.AuthenticationException;
106
import org.springframework.security.web.server.ServerAuthenticationEntryPoint;
117
import org.springframework.web.server.ServerWebExchange;
8+
9+
import com.fasterxml.jackson.databind.ObjectMapper;
10+
import com.ksoot.problem.spring.advice.webflux.SpringWebfluxProblemResponseUtils;
11+
12+
import lombok.RequiredArgsConstructor;
1213
import reactor.core.publisher.Mono;
1314

1415
@RequiredArgsConstructor

src/main/java/com/ksoot/problem/spring/boot/autoconfigure/ProblemDaoConfiguration.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class ProblemDaoConfiguration {
3333
public static class PostgresqlConstraintNameResolverConfiguration {
3434

3535
@Bean
36-
public ConstraintNameResolver postgresqlConstraintNameResolver(final Environment env) {
36+
ConstraintNameResolver postgresqlConstraintNameResolver(final Environment env) {
3737
return new PostgresConstraintNameResolver();
3838
}
3939
}
@@ -44,7 +44,7 @@ public ConstraintNameResolver postgresqlConstraintNameResolver(final Environment
4444
public static class SQLServerConstraintNameResolverConfiguration {
4545

4646
@Bean
47-
public ConstraintNameResolver sqlServerConstraintNameResolver(final Environment env) {
47+
ConstraintNameResolver sqlServerConstraintNameResolver(final Environment env) {
4848
return new SQLServerConstraintNameResolver();
4949
}
5050
}
@@ -55,7 +55,7 @@ public ConstraintNameResolver sqlServerConstraintNameResolver(final Environment
5555
public static class MongoConstraintNameResolverConfiguration {
5656

5757
@Bean
58-
public ConstraintNameResolver mongoConstraintNameResolver(final Environment env) {
58+
ConstraintNameResolver mongoConstraintNameResolver(final Environment env) {
5959
return new MongoConstraintNameResolver();
6060
}
6161
}

0 commit comments

Comments
 (0)