From 8326332160d1b62141c0eb30e38f6433184f0a43 Mon Sep 17 00:00:00 2001 From: Matthieu Baechler Date: Thu, 11 Feb 2016 16:58:41 +0100 Subject: [PATCH 1/2] Issue-456 input configuration should not be altered as it breaks unix socket support --- .../dockerjava/jaxrs/DockerCmdExecFactoryImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java b/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java index ceddb8af4..7e61a0bf8 100644 --- a/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java +++ b/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java @@ -153,9 +153,7 @@ public void init(DockerClientConfig dockerClientConfig) { protocol = "http"; } - if(originalUri.getScheme().equals("unix")) { - dockerClientConfig.setUri(UnixConnectionSocketFactory.sanitizeUri(originalUri)); - } else { + if(!originalUri.getScheme().equals("unix")) { configureProxy(clientConfig, protocol); } @@ -181,9 +179,16 @@ public void init(DockerClientConfig dockerClientConfig) { client = clientBuilder.build(); - baseResource = client.target(dockerClientConfig.getUri()).path(dockerClientConfig.getVersion().asWebPathPart()); + baseResource = client.target(sanitizeUrl(dockerClientConfig.getUri())).path(dockerClientConfig.getVersion().asWebPathPart()); } + private URI sanitizeUrl(URI originalUri) { + if (originalUri.getScheme().equals("unix")) { + return UnixConnectionSocketFactory.sanitizeUri(originalUri); + } + return originalUri; + } + private void configureProxy(ClientConfig clientConfig, String protocol) { List proxies = ProxySelector.getDefault().select(dockerClientConfig.getUri()); From 8198aca73d751ae6bb0a1674eae8ee8445f03f49 Mon Sep 17 00:00:00 2001 From: Matthieu Baechler Date: Fri, 12 Feb 2016 21:32:36 +0100 Subject: [PATCH 2/2] fixup! Issue-456 input configuration should not be altered as it breaks unix socket support --- .../java/com/github/dockerjava/core/DockerClientConfig.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/main/java/com/github/dockerjava/core/DockerClientConfig.java b/src/main/java/com/github/dockerjava/core/DockerClientConfig.java index 6187be49c..048612462 100644 --- a/src/main/java/com/github/dockerjava/core/DockerClientConfig.java +++ b/src/main/java/com/github/dockerjava/core/DockerClientConfig.java @@ -65,7 +65,7 @@ public class DockerClientConfig implements Serializable { private static final String DOCKER_IO_PROPERTIES_PROPERTY = "docker.io.properties"; - private URI uri; + private final URI uri; private final String username, password, email, serverAddress, dockerCfgPath; @@ -208,10 +208,6 @@ public URI getUri() { return uri; } - public void setUri(URI uri) { - this.uri = uri; - } - public RemoteApiVersion getVersion() { return version; }