diff --git a/docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerClientConfig.java b/docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerClientConfig.java index 9637e27aa..7f17295f3 100644 --- a/docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerClientConfig.java +++ b/docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerClientConfig.java @@ -22,7 +22,6 @@ import java.net.URI; import java.util.HashSet; import java.util.Map; -import java.util.Objects; import java.util.Properties; import java.util.Set; @@ -106,14 +105,7 @@ private URI checkDockerHostScheme(URI dockerHost) { if (dockerHost == null) { throw new DockerClientException("'dockerHost' is null"); } - switch (Objects.toString(dockerHost.getScheme())) { - case "tcp": - case "unix": - case "npipe": - return dockerHost; - default: - throw new DockerClientException("Unsupported protocol scheme found: '" + dockerHost); - } + return dockerHost; } private static Properties loadIncludedDockerProperties(Properties systemProperties) { diff --git a/docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClientImpl.java b/docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClientImpl.java index 268efe4af..93677bd36 100644 --- a/docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClientImpl.java +++ b/docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClientImpl.java @@ -80,8 +80,7 @@ protected ApacheDockerHttpClientImpl( ); break; default: - pathPrefix = ""; - host = HttpHost.create(dockerHost); + throw new IllegalArgumentException("Unsupported protocol scheme: " + dockerHost); } PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager( diff --git a/docker-java-transport-okhttp/src/main/java/com/github/dockerjava/okhttp/OkDockerHttpClient.java b/docker-java-transport-okhttp/src/main/java/com/github/dockerjava/okhttp/OkDockerHttpClient.java index 5b8593d1e..ee58acb09 100644 --- a/docker-java-transport-okhttp/src/main/java/com/github/dockerjava/okhttp/OkDockerHttpClient.java +++ b/docker-java-transport-okhttp/src/main/java/com/github/dockerjava/okhttp/OkDockerHttpClient.java @@ -175,7 +175,7 @@ private OkDockerHttpClient( } break; default: - baseUrlBuilder = HttpUrl.get(dockerHost.toString()).newBuilder(); + throw new IllegalArgumentException("Unsupported protocol scheme: " + dockerHost); } baseUrl = baseUrlBuilder.build(); } diff --git a/docker-java/src/test/java/com/github/dockerjava/core/DefaultDockerClientConfigTest.java b/docker-java/src/test/java/com/github/dockerjava/core/DefaultDockerClientConfigTest.java index 8c1071aa6..66d5bcf11 100644 --- a/docker-java/src/test/java/com/github/dockerjava/core/DefaultDockerClientConfigTest.java +++ b/docker-java/src/test/java/com/github/dockerjava/core/DefaultDockerClientConfigTest.java @@ -15,6 +15,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Properties; +import java.util.UUID; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; @@ -172,28 +173,11 @@ public void testTlsVerifyAndCertPath() throws Exception { new LocalDirectorySSLConfig(dockerCertPath())); } - @Test(expected = DockerClientException.class) - public void testWrongHostScheme() throws Exception { - new DefaultDockerClientConfig(URI.create("http://foo"), "dockerConfig", "apiVersion", "registryUrl", "registryUsername", "registryPassword", "registryEmail", - null); - } - @Test() - public void testTcpHostScheme() throws Exception { - new DefaultDockerClientConfig(URI.create("tcp://foo"), "dockerConfig", "apiVersion", "registryUrl", "registryUsername", "registryPassword", "registryEmail", - null); - } - - @Test() - public void testUnixHostScheme() throws Exception { - new DefaultDockerClientConfig(URI.create("unix://foo"), "dockerConfig", "apiVersion", "registryUrl", "registryUsername", "registryPassword", "registryEmail", - null); - } - - @Test() - public void testNpipeHostScheme() throws Exception { - new DefaultDockerClientConfig(URI.create("npipe://foo"), "dockerConfig", "apiVersion", "registryUrl", "registryUsername", "registryPassword", "registryEmail", - null); + public void testAnyHostScheme() throws Exception { + URI dockerHost = URI.create(UUID.randomUUID().toString().replace("-", "") + "://foo"); + new DefaultDockerClientConfig(dockerHost, "dockerConfig", "apiVersion", "registryUrl", "registryUsername", "registryPassword", "registryEmail", + null); } @Test