diff --git a/.github/workflows/github-build-release.yml b/.github/workflows/github-build-release.yml
index d6388435..7e26fbfd 100644
--- a/.github/workflows/github-build-release.yml
+++ b/.github/workflows/github-build-release.yml
@@ -11,11 +11,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
- uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
+ uses: actions/checkout@v4
+ - name: Set up JDK 11
+ uses: actions/setup-java@v4
with:
- java-version: 1.8
+ java-version: '11'
+ distribution: 'temurin'
- name: Build
run: mvn package
- name: Create Release
diff --git a/.github/workflows/java-pr-jobs.yml b/.github/workflows/java-pr-jobs.yml
index c04ab4fb..b4733b20 100644
--- a/.github/workflows/java-pr-jobs.yml
+++ b/.github/workflows/java-pr-jobs.yml
@@ -12,10 +12,11 @@ jobs:
name: Build and Test
steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
+ - uses: actions/checkout@v4
+ - name: Set up JDK 11
+ uses: actions/setup-java@v4
with:
- java-version: 1.8
+ java-version: '11'
+ distribution: 'temurin'
- name: Build and test
run: mvn verify
diff --git a/pom.xml b/pom.xml
index 64b2b00d..dfc93b17 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,12 +9,12 @@
1.1.4
- 4.5.15
+ 5.0.4
1.5.11
- 2.16.1
- 5.9.2
+ 2.17.0
+ 5.10.2
2.2
- 3.0.0-M5
+ 3.2.5
diff --git a/src/main/java/kafka/vertx/demo/Main.java b/src/main/java/kafka/vertx/demo/Main.java
index 0cd467a6..09a72ae3 100644
--- a/src/main/java/kafka/vertx/demo/Main.java
+++ b/src/main/java/kafka/vertx/demo/Main.java
@@ -11,7 +11,6 @@
import io.vertx.core.*;
import io.vertx.core.file.FileSystem;
import io.vertx.core.json.JsonObject;
-import io.vertx.core.spi.resolver.ResolverProvider;
import org.apache.kafka.common.config.SslConfigs;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -40,7 +39,7 @@ public static void main(String[] args) {
long startTime = currentTimeMillis();
// Set vertx timeout to deal with slow DNS connections
- System.setProperty(ResolverProvider.DISABLE_DNS_RESOLVER_PROP_NAME, "true");
+ System.setProperty("vertx.disableDnsResolver", "true");
Vertx vertx = Vertx.vertx(
new VertxOptions()
.setWarningExceptionTime(10).setWarningExceptionTimeUnit(TimeUnit.SECONDS)
@@ -58,7 +57,7 @@ public static void main(String[] args) {
Future periodicProducerDeployment = vertx.deployVerticle(new PeriodicProducer());
Future webSocketServerDeployment = vertx.deployVerticle(new WebSocketServer());
- CompositeFuture.join(periodicProducerDeployment, webSocketServerDeployment)
+ Future.all(periodicProducerDeployment, webSocketServerDeployment)
.onSuccess(ok -> logger.info("✅ Application started in {}ms", currentTimeMillis() - startTime))
.onFailure(err -> logger.error("❌ Application failed to start", err));
}
diff --git a/src/main/java/kafka/vertx/demo/WebSocketServer.java b/src/main/java/kafka/vertx/demo/WebSocketServer.java
index 9c02c094..76dd7c57 100644
--- a/src/main/java/kafka/vertx/demo/WebSocketServer.java
+++ b/src/main/java/kafka/vertx/demo/WebSocketServer.java
@@ -75,14 +75,12 @@ private Future createRouterAndStartServer(JsonObject config) {
data.put("config", props);
- engine.render(data, "webroot/index.html", res -> {
- if (res.succeeded()) {
- ctx.response().end(res.result());
- } else {
- logger.error(res.cause().getMessage());
- ctx.fail(res.cause());
- }
- });
+ engine.render(data, "webroot/index.html")
+ .onSuccess(buffer -> ctx.response().end(buffer))
+ .onFailure(err -> {
+ logger.error(err.getMessage());
+ ctx.fail(err);
+ });
});
return startWebSocket(router);
@@ -106,7 +104,7 @@ private void handleWebSocket(ServerWebSocket webSocket) {
handleConsumeSocket(webSocket);
break;
default:
- webSocket.reject();
+ webSocket.close();
}
}
diff --git a/src/test/java/kafka/vertx/demo/WebSocketServerTest.java b/src/test/java/kafka/vertx/demo/WebSocketServerTest.java
index b857d8b8..2312be77 100644
--- a/src/test/java/kafka/vertx/demo/WebSocketServerTest.java
+++ b/src/test/java/kafka/vertx/demo/WebSocketServerTest.java
@@ -25,9 +25,8 @@ public class WebSocketServerTest {
@BeforeEach
void setup(Vertx vertx, VertxTestContext testContext) {
- vertx.deployVerticle(new WebSocketServer(), res -> {
- testContext.completeNow();
- });
+ vertx.deployVerticle(new WebSocketServer())
+ .onComplete(testContext.succeeding(id -> testContext.completeNow()));
}
@Test
@@ -44,7 +43,8 @@ void getTemplateResponse(Vertx vertx, VertxTestContext testContext) {
client.get(8080, "localhost", "/")
.as(BodyCodec.string())
- .send(testContext.succeeding(response -> testContext.verify(() -> {
+ .send()
+ .onComplete(testContext.succeeding(response -> testContext.verify(() -> {
assertThat(response.body(), CoreMatchers.containsString(EXPECTED));
testContext.completeNow();
})));