-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for kotlin serialization to resteasy reactive #21318
Conversation
...alization/runtime/src/main/kotlin/io/quarkus/kotlin/serialization/KotSerMessageBodyReader.kt
Outdated
Show resolved
Hide resolved
...alization/runtime/src/main/kotlin/io/quarkus/kotlin/serialization/KotSerMessageBodyWriter.kt
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/deployment/pom.xml
Outdated
Show resolved
Hide resolved
This is going to need a rebase |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small question from an interested party.
Also, would it be prudent to write a serializer for kotlinx-serialization JsonObject
to Vert.x JsonObject
?
Kotlin/kotlinx.serialization#296
this is ready to give a serious look at @geoand . There are likely some cleanups to do here and there and no doubt some tweaking with the reactive bits but it seems to be sending and receiving properly using kotlin serialization now. |
Great! I'll have a look tomorrow |
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/deployment/pom.xml
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/deployment/pom.xml
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/runtime/pom.xml
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/runtime/pom.xml
Outdated
Show resolved
Hide resolved
...time/src/main/kotlin/io/quarkus/kotlin/serialization/KotlinSerializationMessageBodyReader.kt
Show resolved
Hide resolved
integration-tests/kotlin-serialization/src/test/kotlin/io/quarkus/it/kotser/ResourceTest.kt
Show resolved
Hide resolved
...lization-common/runtime/src/main/java/io/quarkus/kotlin/serialization/JsonConfiguration.java
Outdated
Show resolved
Hide resolved
I added some config tests. I did it as a 3rd module simply because running the kotlin-serialization plugin in the deployment module seemed to confuse the integration tests. |
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/runtime/pom.xml
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/tests/pom.xml
Outdated
Show resolved
Hide resolved
extensions/resteasy-reactive/rest-client-reactive-kotlin-serialization/tests/pom.xml
Outdated
Show resolved
Hide resolved
integration-tests/rest-client-reactive-kotlin-serialization/pom.xml
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Other than some dependency issue, looks good!
Let's get those fixed and then merge this
...time/src/main/kotlin/io/quarkus/kotlin/serialization/KotlinSerializationMessageBodyWriter.kt
Outdated
Show resolved
Hide resolved
if (o is String) { // YUK: done in order to avoid adding extra quotes... | ||
stream.write(o.toByteArray()) | ||
} else { | ||
val encodeToString = json.encodeToString(json.serializersModule.serializer(genericType), o) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couldn't you have used encodeToStream here also?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did I miss one? I'll double check when I'm back at my computer.
No description provided.