From 6efc2bcb4906484f3d51421716b44b0108e44d41 Mon Sep 17 00:00:00 2001 From: Stephan Schnabel Date: Wed, 29 Dec 2021 12:05:55 +0100 Subject: [PATCH] Remove lombok. --- pom.xml | 13 ----- .../logging/http/AbstractMdcFilter.java | 3 + .../http/mdc/AuthenticationMdcFilter.java | 2 - .../logging/http/mdc/HeaderMdcFilter.java | 2 - .../logging/http/mdc/PathMdcFilter.java | 2 - .../logging/layout/GcpJsonLayout.java | 5 -- .../logging/mdc/MDCTurboFilterConfigurer.java | 6 +- .../logging/http/AbstractFilterTest.java | 57 +++++++++++++------ 8 files changed, 48 insertions(+), 42 deletions(-) diff --git a/pom.xml b/pom.xml index d641a9f..3859186 100644 --- a/pom.xml +++ b/pom.xml @@ -81,7 +81,6 @@ 1.2.8 0.1.5 3.2.3 - 1.18.22 @@ -171,13 +170,6 @@ test - - - org.projectlombok - lombok - provided - - ch.qos.logback @@ -208,11 +200,6 @@ ${version.org.apache.maven.plugins.compiler} - - org.projectlombok - lombok - ${version.org.projectlombok} - io.micronaut micronaut-inject-java diff --git a/src/main/java/io/kokuwa/micronaut/logging/http/AbstractMdcFilter.java b/src/main/java/io/kokuwa/micronaut/logging/http/AbstractMdcFilter.java index c5d2ffa..b4634be 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/http/AbstractMdcFilter.java +++ b/src/main/java/io/kokuwa/micronaut/logging/http/AbstractMdcFilter.java @@ -3,6 +3,8 @@ package io.kokuwa.micronaut.logging.http; import java.util.Map; import org.reactivestreams.Publisher; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.slf4j.MDC; import io.micronaut.core.async.publisher.Publishers; @@ -18,6 +20,7 @@ import io.micronaut.http.filter.ServerFilterChain; */ public abstract class AbstractMdcFilter implements HttpServerFilter { + protected final Logger log = LoggerFactory.getLogger(getClass()); protected final int order; protected final String prefix; diff --git a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/AuthenticationMdcFilter.java b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/AuthenticationMdcFilter.java index 66d3d3f..aea7557 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/AuthenticationMdcFilter.java +++ b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/AuthenticationMdcFilter.java @@ -17,7 +17,6 @@ import io.micronaut.http.filter.ServerFilterChain; import io.micronaut.http.filter.ServerFilterPhase; import io.micronaut.runtime.context.scope.Refreshable; import io.micronaut.security.authentication.Authentication; -import lombok.extern.slf4j.Slf4j; /** * Filter to add claims from authentication to MDC. @@ -28,7 +27,6 @@ import lombok.extern.slf4j.Slf4j; @Requires(classes = Authentication.class) @Requires(property = AuthenticationMdcFilter.PREFIX + ".enabled", notEquals = StringUtils.FALSE) @Filter("${" + AuthenticationMdcFilter.PREFIX + ".path:/**}") -@Slf4j public class AuthenticationMdcFilter extends AbstractMdcFilter { public static final String PREFIX = "logger.http.authentication"; diff --git a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java index 8ff5d50..a59b425 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java +++ b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java @@ -18,7 +18,6 @@ import io.micronaut.http.annotation.Filter; import io.micronaut.http.filter.ServerFilterChain; import io.micronaut.http.filter.ServerFilterPhase; import io.micronaut.runtime.context.scope.Refreshable; -import lombok.extern.slf4j.Slf4j; /** * Filter to add http headers to MDC. @@ -29,7 +28,6 @@ import lombok.extern.slf4j.Slf4j; @Requires(property = HeaderMdcFilter.PREFIX + ".enabled", notEquals = StringUtils.FALSE) @Requires(property = HeaderMdcFilter.PREFIX + ".names") @Filter("${" + HeaderMdcFilter.PREFIX + ".path:/**}") -@Slf4j public class HeaderMdcFilter extends AbstractMdcFilter { public static final String PREFIX = "logger.http.header"; diff --git a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilter.java b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilter.java index c8c490a..848e34d 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilter.java +++ b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilter.java @@ -21,7 +21,6 @@ import io.micronaut.http.annotation.Filter; import io.micronaut.http.filter.ServerFilterChain; import io.micronaut.http.filter.ServerFilterPhase; import io.micronaut.runtime.context.scope.Refreshable; -import lombok.extern.slf4j.Slf4j; /** * Filter to add request path parts to MDC. @@ -32,7 +31,6 @@ import lombok.extern.slf4j.Slf4j; @Requires(property = PathMdcFilter.PREFIX + ".enabled", notEquals = StringUtils.FALSE) @Requires(property = PathMdcFilter.PREFIX + ".patterns") @Filter("${" + PathMdcFilter.PREFIX + ".path:/**}") -@Slf4j public class PathMdcFilter extends AbstractMdcFilter { public static final String PREFIX = "logger.http.path"; diff --git a/src/main/java/io/kokuwa/micronaut/logging/layout/GcpJsonLayout.java b/src/main/java/io/kokuwa/micronaut/logging/layout/GcpJsonLayout.java index 0cd52d8..d2bf04a 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/layout/GcpJsonLayout.java +++ b/src/main/java/io/kokuwa/micronaut/logging/layout/GcpJsonLayout.java @@ -8,8 +8,6 @@ import java.util.Map; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.contrib.json.classic.JsonLayout; import io.micronaut.core.util.StringUtils; -import lombok.Setter; -import lombok.experimental.Accessors; /** * GCP logging layout. @@ -18,7 +16,6 @@ import lombok.experimental.Accessors; * @see "https://cloud.google.com/logging/docs/agent/configuration#process-payload" * @see "https://cloud.google.com/error-reporting/reference/rest/v1beta1/ServiceContext" */ -@Accessors(chain = false) public class GcpJsonLayout extends JsonLayout { private static final String UNDEFINED = "_IS_UNDEFINED"; @@ -26,9 +23,7 @@ public class GcpJsonLayout extends JsonLayout { private static final String SEVERITY_ATTR_NAME = "severity"; private Map serviceContext; - @Setter private String serviceName; - @Setter private String serviceVersion; @Override diff --git a/src/main/java/io/kokuwa/micronaut/logging/mdc/MDCTurboFilterConfigurer.java b/src/main/java/io/kokuwa/micronaut/logging/mdc/MDCTurboFilterConfigurer.java index e83217c..e3abfb4 100644 --- a/src/main/java/io/kokuwa/micronaut/logging/mdc/MDCTurboFilterConfigurer.java +++ b/src/main/java/io/kokuwa/micronaut/logging/mdc/MDCTurboFilterConfigurer.java @@ -2,6 +2,9 @@ package io.kokuwa.micronaut.logging.mdc; import java.util.Set; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import ch.qos.logback.classic.Level; import io.kokuwa.micronaut.logging.LogbackUtil; import io.micronaut.context.annotation.BootstrapContextCompatible; @@ -11,7 +14,6 @@ import io.micronaut.context.env.Environment; import io.micronaut.core.annotation.Internal; import io.micronaut.core.type.Argument; import io.micronaut.core.util.StringUtils; -import lombok.extern.slf4j.Slf4j; /** * Configure MDC filter. @@ -24,11 +26,11 @@ import lombok.extern.slf4j.Slf4j; @BootstrapContextCompatible @Context @Internal -@Slf4j public class MDCTurboFilterConfigurer { public static final String PREFIX = "logger.mdc"; + private static final Logger log = LoggerFactory.getLogger(MDCTurboFilterConfigurer.class); private final LogbackUtil logback; private final Environment environment; diff --git a/src/test/java/io/kokuwa/micronaut/logging/http/AbstractFilterTest.java b/src/test/java/io/kokuwa/micronaut/logging/http/AbstractFilterTest.java index 46fd6cd..56b68d0 100644 --- a/src/test/java/io/kokuwa/micronaut/logging/http/AbstractFilterTest.java +++ b/src/test/java/io/kokuwa/micronaut/logging/http/AbstractFilterTest.java @@ -2,6 +2,7 @@ package io.kokuwa.micronaut.logging.http; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; import java.util.Map; import java.util.function.Consumer; @@ -9,8 +10,13 @@ import java.util.function.Consumer; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.slf4j.MDC; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.nimbusds.jose.JOSEException; import com.nimbusds.jwt.JWTClaimsSet; import ch.qos.logback.classic.Level; @@ -31,11 +37,6 @@ import io.micronaut.security.rules.SecurityRule; import io.micronaut.security.token.jwt.signature.SignatureGeneratorConfiguration; import io.micronaut.test.extensions.junit5.annotation.MicronautTest; import jakarta.inject.Inject; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; /** * Test for {@link HttpServerFilter}. @@ -70,16 +71,19 @@ public abstract class AbstractFilterTest extends AbstractTest { return token(subject, claims -> {}); } - @SneakyThrows public String token(String subject, Consumer manipulator) { var claims = new JWTClaimsSet.Builder().subject(subject); manipulator.accept(claims); - return HttpHeaderValues.AUTHORIZATION_PREFIX_BEARER + " " + signature.sign(claims.build()).serialize(); + try { + return HttpHeaderValues.AUTHORIZATION_PREFIX_BEARER + " " + signature.sign(claims.build()).serialize(); + } catch (JOSEException e) { + fail(e); + return null; + } } // request - @SneakyThrows public TestResponse get(String path, Map headers) { var request = HttpRequest.GET(path); @@ -98,9 +102,10 @@ public abstract class AbstractFilterTest extends AbstractTest { @Secured({ SecurityRule.IS_ANONYMOUS, SecurityRule.IS_AUTHENTICATED }) @Controller - @Slf4j public static class TestController { + private static final Logger log = LoggerFactory.getLogger(TestController.class); + @Get("/{+path}") TestResponse run(@PathVariable String path) { @@ -120,16 +125,36 @@ public abstract class AbstractFilterTest extends AbstractTest { var mdc = MDC.getCopyOfContextMap(); log.info("Found MDC: {}", mdc); - return new TestResponse(path, level.toString(), mdc == null ? Map.of() : mdc); + return new TestResponse(path, level.toString(), mdc); } } - @Data - @NoArgsConstructor - @AllArgsConstructor public static class TestResponse { - private String path; - private String level; - private Map context = Map.of(); + + private final String path; + private final String level; + private final Map context; + + @JsonCreator + public TestResponse( + @JsonProperty("path") String path, + @JsonProperty("level") String level, + @JsonProperty("context") Map context) { + this.path = path; + this.level = level; + this.context = context == null ? Map.of() : context; + } + + public String getPath() { + return path; + } + + public String getLevel() { + return level; + } + + public Map getContext() { + return context; + } } }