Skip to content

Commit 43e9780

Browse files
authored
Switch back to JDK WebSocket (#321)
Unfortunately, using Netty for web sockets creates possible headaches for specific frameworks. For example, Helidon is using netty 4.1 but we are on netty 4.2. Switching to the JDK provided WebSocket eliminates this issue. Unfortunately, there is one inefficiency from switching to JDK WebSocket. The `onText` message receives the text in UTF-16 though it was passed on the wire as UTF-8. Given that the import/export messages pass gzipped, base-64 encoded Strings, the UTF-8 to 16 transform is not needed. However, probably better to change Conductor to use binary messages for import request / export response which would eliminate the base64 encoding.
1 parent 3af092e commit 43e9780

4 files changed

Lines changed: 604 additions & 372 deletions

File tree

transact/build.gradle.kts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,12 @@ tasks.named("build") { dependsOn("javadoc") }
2828
dependencies {
2929
api("org.slf4j:slf4j-api:2.0.17") // logging api
3030
api("org.jspecify:jspecify:1.0.0")
31-
api(platform("io.netty:netty-bom:4.2.10.Final")) // export Netty version constraints to consumers
3231

3332
implementation("org.postgresql:postgresql:42.7.10")
3433
implementation("com.zaxxer:HikariCP:7.0.2") // Connection pool
3534
implementation("com.fasterxml.jackson.core:jackson-databind:2.21.1") // json
3635
implementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.21.1")
3736
implementation("com.cronutils:cron-utils:9.2.1") // cron for scheduled wf
38-
implementation("io.netty:netty-codec-http") // HTTP and WebSocket codecs
39-
implementation("io.netty:netty-handler") // SSL and channel handlers
4037

4138
testImplementation(platform("org.junit:junit-bom:6.0.3"))
4239
testImplementation("org.junit.jupiter:junit-jupiter")

0 commit comments

Comments
 (0)