Skip to content

Add support for client-side binary OSON encoding/decoding - #1722

Closed
tsegismont wants to merge 1 commit into
eclipse-vertx:masterfrom
tsegismont:oson-improvements
Closed

tsegismont wants to merge 1 commit into
eclipse-vertx:masterfrom
tsegismont:oson-improvements

Conversation

@tsegismont

Copy link
Copy Markdown
Member

See #1703

On the read path, Helper.convertOracleJsonValue handles all reachable OSON extended types except vector, mapping them to natural Java types: TIMESTAMP and DATE to LocalDateTime, TIMESTAMPTZ to OffsetDateTime, INTERVALDS to Duration, INTERVALYM to Period, and BINARY to Buffer.

On the write path, JsonObject and JsonArray bind parameters are encoded as OSON binary using OracleJsonGenerator. An intermediate UTF-8 byte array is still required because OracleJsonFactory provides no API to construct an OracleJsonValue directly from a Map or List.

Assisted-by: IBM Bob

See eclipse-vertx#1703

On the read path, `Helper.convertOracleJsonValue` handles all reachable OSON extended types except vector, mapping them to natural Java types: `TIMESTAMP` and `DATE` to `LocalDateTime`, `TIMESTAMPTZ` to `OffsetDateTime`, `INTERVALDS` to `Duration`, `INTERVALYM` to `Period`, and `BINARY` to `Buffer`.

On the write path, `JsonObject` and `JsonArray` bind parameters are encoded as OSON binary using `OracleJsonGenerator`.
An intermediate UTF-8 byte array is still required because `OracleJsonFactory` provides no API to construct an `OracleJsonValue` directly from a `Map` or `List`.

Assisted-by: IBM Bob
Signed-off-by: Thomas Segismont <tsegismont@gmail.com>
@tsegismont

Copy link
Copy Markdown
Member Author

@loiclefevre any chance for you to take a look? Thanks

@tsegismont

Copy link
Copy Markdown
Member Author

Superseded by #1749

@tsegismont tsegismont closed this Oct 8, 2026
@tsegismont
tsegismont deleted the oson-improvements branch October 8, 2026 13:36
@loiclefevre

Copy link
Copy Markdown
Contributor

@loiclefevre any chance for you to take a look? Thanks

Sorry, didn't saw your message

@tsegismont

Copy link
Copy Markdown
Member Author

No worries :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants