From 05513af5274beda81e1463968c82d6b3cb97bb36 Mon Sep 17 00:00:00 2001 From: Jakub Scholz Date: Thu, 1 Feb 2024 11:26:56 +0100 Subject: [PATCH] Fix use of deprecated Vert.x methods and unchecked casts (#866) Signed-off-by: Jakub Scholz --- pom.xml | 26 +++++++++++++++---- .../strimzi/kafka/bridge/http/HttpBridge.java | 9 ++++--- .../bridge/http/HttpSinkBridgeEndpoint.java | 5 ++-- .../bridge/http/HttpSourceBridgeEndpoint.java | 3 ++- .../tracing/BridgeContextStorageProvider.java | 2 +- 5 files changed, 33 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index ae49e2b5..c15d8498 100644 --- a/pom.xml +++ b/pom.xml @@ -113,6 +113,7 @@ 3.3.0 3.0.0-M7 3.0.0-M7 + 3.10.1 3.4.2 3.4.1 3.2.1 @@ -186,11 +187,6 @@ netty-common ${netty.version} - - io.netty - netty-buffer - ${netty.version} - org.apache.logging.log4j log4j-api @@ -422,6 +418,26 @@ + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.version} + + + default-compile + compile + + compile + + + + -Xlint:unchecked,deprecation + -Werror + + + + + org.apache.maven.plugins maven-assembly-plugin diff --git a/src/main/java/io/strimzi/kafka/bridge/http/HttpBridge.java b/src/main/java/io/strimzi/kafka/bridge/http/HttpBridge.java index dc910909..f6c32822 100644 --- a/src/main/java/io/strimzi/kafka/bridge/http/HttpBridge.java +++ b/src/main/java/io/strimzi/kafka/bridge/http/HttpBridge.java @@ -223,7 +223,8 @@ private CorsHandler getCorsHandler() { String allowedOrigins = this.bridgeConfig.getHttpConfig().getCorsAllowedOrigins(); LOGGER.info("Allowed origins for Cors: {}", allowedOrigins); - return CorsHandler.create(allowedOrigins) + return CorsHandler.create() + .addRelativeOrigin(allowedOrigins) .allowedHeaders(allowedHeaders) .allowedMethods(allowedMethods); } @@ -292,7 +293,7 @@ private void createConsumer(RoutingContext routingContext) { this.httpBridgeContext.setOpenApiOperation(HttpOpenApiOperations.CREATE_CONSUMER); // check for an empty body - JsonNode body = !routingContext.body().isEmpty() ? JsonUtils.bytesToJson(routingContext.body().buffer().getByteBuf().array()) : JsonUtils.createObjectNode(); + JsonNode body = !routingContext.body().isEmpty() ? JsonUtils.bytesToJson(routingContext.body().buffer().getBytes()) : JsonUtils.createObjectNode(); HttpSinkBridgeEndpoint sink = null; try { @@ -302,12 +303,14 @@ private void createConsumer(RoutingContext routingContext) { new ByteArrayDeserializer(), new ByteArrayDeserializer()); sink.closeHandler(endpoint -> { + @SuppressWarnings("unchecked") HttpSinkBridgeEndpoint httpEndpoint = (HttpSinkBridgeEndpoint) endpoint; httpBridgeContext.getHttpSinkEndpoints().remove(httpEndpoint.consumerInstanceId()); }); sink.open(); sink.handle(routingContext, endpoint -> { + @SuppressWarnings("unchecked") HttpSinkBridgeEndpoint httpEndpoint = (HttpSinkBridgeEndpoint) endpoint; httpBridgeContext.getHttpSinkEndpoints().put(httpEndpoint.consumerInstanceId(), httpEndpoint); timestampMap.put(httpEndpoint.consumerInstanceId(), System.currentTimeMillis()); @@ -532,7 +535,7 @@ private void openapi(RoutingContext routingContext) { if (xForwardedPath != null) { path = xForwardedPath; } - ObjectNode json = (ObjectNode) JsonUtils.bytesToJson(readFile.result().getByteBuf().array()); + ObjectNode json = (ObjectNode) JsonUtils.bytesToJson(readFile.result().getBytes()); json.put("basePath", path); HttpUtils.sendResponse(routingContext, HttpResponseStatus.OK.code(), BridgeContentType.JSON, JsonUtils.jsonToBytes(json)); } diff --git a/src/main/java/io/strimzi/kafka/bridge/http/HttpSinkBridgeEndpoint.java b/src/main/java/io/strimzi/kafka/bridge/http/HttpSinkBridgeEndpoint.java index b0294f57..7987aeee 100644 --- a/src/main/java/io/strimzi/kafka/bridge/http/HttpSinkBridgeEndpoint.java +++ b/src/main/java/io/strimzi/kafka/bridge/http/HttpSinkBridgeEndpoint.java @@ -547,7 +547,7 @@ public void handle(RoutingContext routingContext, Handler ha try { // check for an empty body if (!routingContext.body().isEmpty()) { - bodyAsJson = JsonUtils.bytesToJson(routingContext.body().buffer().getByteBuf().array()); + bodyAsJson = JsonUtils.bytesToJson(routingContext.body().buffer().getBytes()); } LOGGER.debug("[{}] Request: body = {}", routingContext.get("request-id"), bodyAsJson); } catch (JsonDecodeException ex) { @@ -605,6 +605,7 @@ public void handle(RoutingContext routingContext, Handler ha } } + @SuppressWarnings("unchecked") private MessageConverter buildMessageConverter() { switch (this.format) { case JSON: @@ -634,7 +635,7 @@ private boolean checkAcceptedBody(String accept) { private String buildRequestUri(RoutingContext routingContext) { // by default schema/proto and host comes from the base request information (i.e. "Host" header) String scheme = routingContext.request().scheme(); - String host = routingContext.request().host(); + String host = routingContext.request().authority().toString(); // eventually get the request path from "X-Forwarded-Path" if set by a gateway/proxy String xForwardedPath = routingContext.request().getHeader("x-forwarded-path"); String path = (xForwardedPath != null && !xForwardedPath.isEmpty()) ? xForwardedPath : routingContext.request().path(); diff --git a/src/main/java/io/strimzi/kafka/bridge/http/HttpSourceBridgeEndpoint.java b/src/main/java/io/strimzi/kafka/bridge/http/HttpSourceBridgeEndpoint.java index 2999a27c..93a21475 100644 --- a/src/main/java/io/strimzi/kafka/bridge/http/HttpSourceBridgeEndpoint.java +++ b/src/main/java/io/strimzi/kafka/bridge/http/HttpSourceBridgeEndpoint.java @@ -115,7 +115,7 @@ public void handle(RoutingContext routingContext, Handler ha return; } - records = messageConverter.toKafkaRecords(topic, partition, routingContext.body().buffer().getByteBuf().array()); + records = messageConverter.toKafkaRecords(topic, partition, routingContext.body().buffer().getBytes()); for (ProducerRecord record :records) { span.inject(record); @@ -213,6 +213,7 @@ private int handleError(Throwable ex) { } } + @SuppressWarnings("unchecked") private MessageConverter buildMessageConverter() { switch (this.format) { case JSON: diff --git a/src/main/java/io/strimzi/kafka/bridge/tracing/BridgeContextStorageProvider.java b/src/main/java/io/strimzi/kafka/bridge/tracing/BridgeContextStorageProvider.java index d62a7b38..bb02ce0e 100644 --- a/src/main/java/io/strimzi/kafka/bridge/tracing/BridgeContextStorageProvider.java +++ b/src/main/java/io/strimzi/kafka/bridge/tracing/BridgeContextStorageProvider.java @@ -45,7 +45,7 @@ public ContextStorage get() { enum BridgeContextStorage implements ContextStorage { INSTANCE; - private final ConcurrentMap data = new ConcurrentHashMap(); + private final ConcurrentMap data = new ConcurrentHashMap<>(); @Override public Scope attach(Context toAttach) {