diff --git a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/config/http/OpenLineageClientHttpTransportConfig.java b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/config/http/OpenLineageClientHttpTransportConfig.java index d7d1e94fde51..6e09ff2f1f28 100644 --- a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/config/http/OpenLineageClientHttpTransportConfig.java +++ b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/config/http/OpenLineageClientHttpTransportConfig.java @@ -21,6 +21,7 @@ import io.airlift.units.MinDuration; import jakarta.validation.constraints.NotNull; +import java.net.URI; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -32,7 +33,7 @@ public class OpenLineageClientHttpTransportConfig { - private String url; + private URI url; private String endpoint; private Optional apiKey = Optional.empty(); private Duration timeout = new Duration(5000, TimeUnit.MILLISECONDS); @@ -40,14 +41,14 @@ public class OpenLineageClientHttpTransportConfig private Map urlParams = new HashMap<>(); @NotNull - public String getUrl() + public URI getUrl() { return url; } @Config("openlineage-event-listener.transport.url") @ConfigDescription("URL of receiving server. Explicitly set the scheme https:// to use symmetric encryption") - public OpenLineageClientHttpTransportConfig setUrl(String url) + public OpenLineageClientHttpTransportConfig setUrl(URI url) { this.url = url; return this; diff --git a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/OpenLineageTransport.java b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/OpenLineageTransport.java index 0e7c936c56a3..df81b2e6454c 100644 --- a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/OpenLineageTransport.java +++ b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/OpenLineageTransport.java @@ -17,6 +17,5 @@ public interface OpenLineageTransport { - Transport buildTransport() - throws Exception; + Transport buildTransport(); } diff --git a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/http/OpenLineageHttpTransport.java b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/http/OpenLineageHttpTransport.java index 3d09477d9155..472de10d7108 100644 --- a/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/http/OpenLineageHttpTransport.java +++ b/plugin/trino-openlineage/src/main/java/io/trino/plugin/openlineage/transport/http/OpenLineageHttpTransport.java @@ -29,7 +29,7 @@ public class OpenLineageHttpTransport implements OpenLineageTransport { - private final String url; + private final URI url; private final String endpoint; private final int timeout; private final ApiKeyTokenProvider apiKey; @@ -64,11 +64,10 @@ public OpenLineageHttpTransport(OpenLineageClientHttpTransportConfig config) @Override public HttpTransport buildTransport() - throws Exception { return new HttpTransport( new HttpConfig( - new URI(this.url), + this.url, this.endpoint, null, this.timeout, diff --git a/plugin/trino-openlineage/src/test/java/io/trino/plugin/openlineage/TestOpenLineageClientHttpTransportConfig.java b/plugin/trino-openlineage/src/test/java/io/trino/plugin/openlineage/TestOpenLineageClientHttpTransportConfig.java index 4fe0aefbcb26..95133c914e87 100644 --- a/plugin/trino-openlineage/src/test/java/io/trino/plugin/openlineage/TestOpenLineageClientHttpTransportConfig.java +++ b/plugin/trino-openlineage/src/test/java/io/trino/plugin/openlineage/TestOpenLineageClientHttpTransportConfig.java @@ -19,6 +19,7 @@ import io.trino.plugin.openlineage.config.http.OpenLineageClientHttpTransportConfig; import org.junit.jupiter.api.Test; +import java.net.URI; import java.util.Map; import static io.airlift.configuration.testing.ConfigAssertions.assertFullMapping; @@ -41,6 +42,7 @@ void testDefaults() @Test void testExplicitPropertyMappings() + throws Exception { Map properties = ImmutableMap.builder() .put("openlineage-event-listener.transport.url", "http://testurl") @@ -53,7 +55,7 @@ void testExplicitPropertyMappings() .buildOrThrow(); OpenLineageClientHttpTransportConfig expected = new OpenLineageClientHttpTransportConfig() - .setUrl("http://testurl") + .setUrl(new URI("http://testurl")) .setEndpoint("/test/endpoint") .setApiKey("dummy") .setTimeout(Duration.valueOf("30s"))