justinmclean opened a new issue, #4492:
URL: https://github.com/apache/iggy/issues/4492
The Rust client parses `iggy://` connection strings
(`core/common/src/types/configuration/auth_config/connection_string.rs`), and
the Node and C# SDKs do too. The Java SDK has no parser, so Java users set
host, port and credentials by hand.
## What to do
- Add `public IggyTcpClientBuilder fromConnectionString(String
connectionString)` to
`foreign/java/java-sdk/src/main/java/org/apache/iggy/builder/TcpClientBuilder.java`.
- Accept `iggy://` and `iggy+tcp://`, with `user:password@host:port` and
`tls=true` as a query option. Reject other schemes such as `iggy+quic://`.
Follow `parseConnectionString` in
`foreign/node/src/client/client.connection-string.ts`.
- Delegate to the existing builder methods:
`blocking().host(...).port(...).credentials(...).tls(...)`. Username and
password only: the Java builders have no personal access token login, and
adding one is out of scope.
- Add tests next to `IggyTcpClientBuilderTest.java` for valid strings,
`tls=true` and rejected input.
## Done when
`Iggy.tcpClientBuilder().fromConnectionString("iggy://iggy:iggy@localhost:8090").buildAndLogin()`
returns a logged-in client against a running server, and the tests pass.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]