From dad35023ebad12efe9fe56d4c7df1beee7a73007 Mon Sep 17 00:00:00 2001 From: Stefan Kalscheuer Date: Fri, 28 Mar 2025 18:30:37 +0100 Subject: [PATCH] replace deprecated java.net.URL usage with java.net.URI (#94) Deprecated in Java 20. Migrate URL parsing to backward compatible URI. --- CHANGELOG.md | 3 +++ .../jvault/connector/HTTPVaultConnectorBuilder.java | 12 +++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aeabef6..5a9c328 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,9 @@ * Support Vault transit API (#89) * Support PEM certificate string from `VAULT_CACERT` environment variable (#93) +### Improvements +* Replace deprecated `java.net.URL` usage with `java.net.URI` (#94) + ### Dependencies * Updated Jackson to 2.18.3 (#90) diff --git a/src/main/java/de/stklcode/jvault/connector/HTTPVaultConnectorBuilder.java b/src/main/java/de/stklcode/jvault/connector/HTTPVaultConnectorBuilder.java index a4329e5..7ff9340 100644 --- a/src/main/java/de/stklcode/jvault/connector/HTTPVaultConnectorBuilder.java +++ b/src/main/java/de/stklcode/jvault/connector/HTTPVaultConnectorBuilder.java @@ -22,10 +22,8 @@ import de.stklcode.jvault.connector.exception.VaultConnectorException; import java.io.ByteArrayInputStream; import java.io.IOException; -import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; -import java.net.URL; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; @@ -305,11 +303,11 @@ public final class HTTPVaultConnectorBuilder { /* Parse URL from environment variable */ if (System.getenv(ENV_VAULT_ADDR) != null && !System.getenv(ENV_VAULT_ADDR).isBlank()) { try { - var url = new URL(System.getenv(ENV_VAULT_ADDR)); - this.host = url.getHost(); - this.port = url.getPort(); - this.tls = url.getProtocol().equals("https"); - } catch (MalformedURLException e) { + var uri = new URI(System.getenv(ENV_VAULT_ADDR)); + this.host = uri.getHost(); + this.port = uri.getPort(); + this.tls = uri.getScheme().equalsIgnoreCase("https"); + } catch (URISyntaxException e) { throw new ConnectionException("URL provided in environment variable malformed", e); } }