GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Introduce `docker-java-transport` module (#1402) · ConnorLinfoot/docker-java@4de9f79

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
  • docker-java-core
    • pom.xml
    • src/main/java/com/github/dockerjava/core
      • DefaultDockerCmdExecFactory.java
      • DefaultInvocationBuilder.java
      • DockerClientImpl.java
      • FramedInputStreamConsumer.java
      • SSLConfig.java
  • docker-java-transport-httpclient5
    • pom.xml
    • src/main/java/com/github/dockerjava/httpclient5
      • ApacheDockerHttpClient.java
  • docker-java-transport-jersey/src/main/java/com/github/dockerjava/jaxrs
    • JerseyDockerCmdExecFactory.java
    • JerseyDockerHttpClient.java
    • filter
      • ResponseStatusExceptionFilter.java
  • docker-java-transport-okhttp/src/main/java/com/github/dockerjava/okhttp
    • HijackingInterceptor.java
    • OkDockerHttpClient.java
    • OkHttpDockerCmdExecFactory.java
  • docker-java-transport
    • pom.xml
    • src/main/java/com/github/dockerjava/transport
      • DockerHttpClient.java
      • SSLConfig.java
  • docker-java/src/test/java/com/github/dockerjava
    • cmd
      • CmdIT.java
    • core/command
      • DockerfileFixture.java
  • pom.xml
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎docker-java-core/pom.xml‎

Copy file name to clipboardExpand all lines: docker-java-core/pom.xml
+5-7Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,11 @@
2121
<artifactId>docker-java-api</artifactId>
2222
<version>${project.version}</version>
2323
</dependency>
24+
<dependency>
25+
<groupId>${project.groupId}</groupId>
26+
<artifactId>docker-java-transport</artifactId>
27+
<version>${project.version}</version>
28+
</dependency>
2429

2530
<dependency>
2631
<groupId>org.slf4j</groupId>
@@ -70,13 +75,6 @@
7075
<version>3.0.1u2</version>
7176
<scope>provided</scope>
7277
</dependency>
73-
74-
<dependency>
75-
<groupId>org.immutables</groupId>
76-
<artifactId>value</artifactId>
77-
<version>2.8.2</version>
78-
<scope>provided</scope>
79-
</dependency>
8078
</dependencies>
8179

8280
<build>
Collapse file

‎docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerCmdExecFactory.java‎

Copy file name to clipboardExpand all lines: docker-java-core/src/main/java/com/github/dockerjava/core/DefaultDockerCmdExecFactory.java
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.fasterxml.jackson.core.JsonProcessingException;
44
import com.fasterxml.jackson.databind.ObjectMapper;
5+
import com.github.dockerjava.transport.DockerHttpClient;
56
import com.google.common.collect.HashMultimap;
67
import com.google.common.collect.ImmutableList;
78
import com.google.common.collect.MultimapBuilder;
Collapse file

‎docker-java-core/src/main/java/com/github/dockerjava/core/DefaultInvocationBuilder.java‎

Copy file name to clipboardExpand all lines: docker-java-core/src/main/java/com/github/dockerjava/core/DefaultInvocationBuilder.java
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import com.github.dockerjava.api.exception.NotModifiedException;
1515
import com.github.dockerjava.api.exception.UnauthorizedException;
1616
import com.github.dockerjava.api.model.Frame;
17+
import com.github.dockerjava.transport.DockerHttpClient;
1718
import org.apache.commons.io.IOUtils;
1819

1920
import java.io.ByteArrayInputStream;
Collapse file

‎docker-java-core/src/main/java/com/github/dockerjava/core/DockerClientImpl.java‎

Copy file name to clipboardExpand all lines: docker-java-core/src/main/java/com/github/dockerjava/core/DockerClientImpl.java
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@
148148
import com.github.dockerjava.core.command.UpdateSwarmNodeCmdImpl;
149149
import com.github.dockerjava.core.command.VersionCmdImpl;
150150
import com.github.dockerjava.core.command.WaitContainerCmdImpl;
151+
import com.github.dockerjava.transport.DockerHttpClient;
151152

152153
import javax.annotation.Nonnull;
153154
import javax.annotation.Nullable;
Collapse file

‎docker-java-core/src/main/java/com/github/dockerjava/core/FramedInputStreamConsumer.java‎

Copy file name to clipboardExpand all lines: docker-java-core/src/main/java/com/github/dockerjava/core/FramedInputStreamConsumer.java
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.github.dockerjava.api.async.ResultCallback;
44
import com.github.dockerjava.api.model.Frame;
55
import com.github.dockerjava.api.model.StreamType;
6+
import com.github.dockerjava.transport.DockerHttpClient;
67

78
import java.io.InputStream;
89
import java.util.Arrays;
Collapse file

‎docker-java-core/src/main/java/com/github/dockerjava/core/SSLConfig.java‎

Copy file name to clipboard
+4-16Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,10 @@
11
package com.github.dockerjava.core;
22

3-
import java.security.KeyManagementException;
4-
import java.security.KeyStoreException;
5-
import java.security.NoSuchAlgorithmException;
6-
import java.security.UnrecoverableKeyException;
7-
8-
import javax.net.ssl.SSLContext;
9-
103
/**
11-
* Get an SSL Config. Allows for various different implementations.
4+
*
5+
* @deprecated use {@link com.github.dockerjava.transport.SSLConfig}
126
*/
13-
public interface SSLConfig {
7+
@Deprecated
8+
public interface SSLConfig extends com.github.dockerjava.transport.SSLConfig {
149

15-
/**
16-
* Get the SSL Context, from wherever it comes (file, keystore).
17-
*
18-
* @return an SSL context.
19-
*/
20-
SSLContext getSSLContext() throws KeyManagementException, UnrecoverableKeyException, NoSuchAlgorithmException,
21-
KeyStoreException;
2210
}
Collapse file

‎docker-java-transport-httpclient5/pom.xml‎

Copy file name to clipboardExpand all lines: docker-java-transport-httpclient5/pom.xml
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<dependencies>
1919
<dependency>
2020
<groupId>${project.groupId}</groupId>
21-
<artifactId>docker-java-core</artifactId>
21+
<artifactId>docker-java-transport</artifactId>
2222
<version>${project.version}</version>
2323
</dependency>
2424

Collapse file

‎docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClient.java‎

Copy file name to clipboardExpand all lines: docker-java-transport-httpclient5/src/main/java/com/github/dockerjava/httpclient5/ApacheDockerHttpClient.java
+23-18Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package com.github.dockerjava.httpclient5;
22

3-
import com.github.dockerjava.core.DockerClientConfig;
4-
import com.github.dockerjava.core.DockerHttpClient;
5-
import com.github.dockerjava.core.SSLConfig;
3+
import com.github.dockerjava.transport.SSLConfig;
4+
import com.github.dockerjava.transport.DockerHttpClient;
65
import org.apache.hc.client5.http.classic.methods.HttpUriRequestBase;
76
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
87
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
@@ -44,27 +43,35 @@ public final class ApacheDockerHttpClient implements DockerHttpClient {
4443

4544
public static final class Factory {
4645

47-
private DockerClientConfig dockerClientConfig = null;
46+
private URI dockerHost = null;
4847

49-
public Factory dockerClientConfig(DockerClientConfig value) {
50-
this.dockerClientConfig = value;
48+
private SSLConfig sslConfig = null;
49+
50+
public Factory dockerHost(URI value) {
51+
this.dockerHost = Objects.requireNonNull(value, "dockerHost");
52+
return this;
53+
}
54+
55+
public Factory sslConfig(SSLConfig value) {
56+
this.sslConfig = value;
5157
return this;
5258
}
5359

5460
public ApacheDockerHttpClient build() {
55-
Objects.requireNonNull(dockerClientConfig, "dockerClientConfig");
56-
return new ApacheDockerHttpClient(dockerClientConfig);
61+
Objects.requireNonNull(dockerHost, "dockerHost");
62+
return new ApacheDockerHttpClient(dockerHost, sslConfig);
5763
}
5864
}
5965

6066
private final CloseableHttpClient httpClient;
6167

6268
private final HttpHost host;
6369

64-
private ApacheDockerHttpClient(DockerClientConfig dockerClientConfig) {
65-
Registry<ConnectionSocketFactory> socketFactoryRegistry = createConnectionSocketFactoryRegistry(dockerClientConfig);
66-
67-
URI dockerHost = dockerClientConfig.getDockerHost();
70+
private ApacheDockerHttpClient(
71+
URI dockerHost,
72+
SSLConfig sslConfig
73+
) {
74+
Registry<ConnectionSocketFactory> socketFactoryRegistry = createConnectionSocketFactoryRegistry(sslConfig, dockerHost);
6875

6976
switch (dockerHost.getScheme()) {
7077
case "unix":
@@ -106,10 +113,12 @@ private ApacheDockerHttpClient(DockerClientConfig dockerClientConfig) {
106113
.build();
107114
}
108115

109-
private Registry<ConnectionSocketFactory> createConnectionSocketFactoryRegistry(DockerClientConfig dockerClientConfig) {
116+
private Registry<ConnectionSocketFactory> createConnectionSocketFactoryRegistry(
117+
SSLConfig sslConfig,
118+
URI dockerHost
119+
) {
110120
RegistryBuilder<ConnectionSocketFactory> socketFactoryRegistryBuilder = RegistryBuilder.create();
111121

112-
SSLConfig sslConfig = dockerClientConfig.getSSLConfig();
113122
if (sslConfig != null) {
114123
try {
115124
SSLContext sslContext = sslConfig.getSSLContext();
@@ -127,16 +136,12 @@ private Registry<ConnectionSocketFactory> createConnectionSocketFactoryRegistry(
127136
.register("unix", new PlainConnectionSocketFactory() {
128137
@Override
129138
public Socket createSocket(HttpContext context) throws IOException {
130-
URI dockerHost = dockerClientConfig.getDockerHost();
131-
132139
return new UnixDomainSocket(dockerHost.getPath());
133140
}
134141
})
135142
.register("npipe", new PlainConnectionSocketFactory() {
136143
@Override
137144
public Socket createSocket(HttpContext context) {
138-
URI dockerHost = dockerClientConfig.getDockerHost();
139-
140145
return new NamedPipeSocket(dockerHost.getPath());
141146
}
142147
})
Collapse file

‎docker-java-transport-jersey/src/main/java/com/github/dockerjava/jaxrs/JerseyDockerCmdExecFactory.java‎

Copy file name to clipboardExpand all lines: docker-java-transport-jersey/src/main/java/com/github/dockerjava/jaxrs/JerseyDockerCmdExecFactory.java
+4-2Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.github.dockerjava.core.DockerClientConfig;
77
import com.github.dockerjava.core.DockerClientConfigAware;
88
import com.github.dockerjava.core.DockerClientImpl;
9-
import com.github.dockerjava.core.DockerHttpClient;
9+
import com.github.dockerjava.transport.DockerHttpClient;
1010
import org.glassfish.jersey.client.RequestEntityProcessing;
1111

1212
import javax.ws.rs.client.ClientRequestFilter;
@@ -37,7 +37,9 @@ public final DockerCmdExecFactory getDockerCmdExecFactory() {
3737

3838
@Override
3939
public void init(DockerClientConfig dockerClientConfig) {
40-
clientFactory = clientFactory.dockerClientConfig(dockerClientConfig);
40+
clientFactory = clientFactory
41+
.dockerHost(dockerClientConfig.getDockerHost())
42+
.sslConfig(dockerClientConfig.getSSLConfig());
4143
dockerCmdExecFactory = new DefaultDockerCmdExecFactory(
4244
clientFactory.build(),
4345
dockerClientConfig.getObjectMapper()
Collapse file

‎docker-java-transport-jersey/src/main/java/com/github/dockerjava/jaxrs/JerseyDockerHttpClient.java‎

Copy file name to clipboardExpand all lines: docker-java-transport-jersey/src/main/java/com/github/dockerjava/jaxrs/JerseyDockerHttpClient.java
+18-15Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
43
import com.github.dockerjava.api.exception.DockerClientException;
54
import com.github.dockerjava.api.exception.DockerException;
6-
import com.github.dockerjava.core.DockerClientConfig;
7-
import com.github.dockerjava.core.DockerHttpClient;
8-
import com.github.dockerjava.core.SSLConfig;
5+
import com.github.dockerjava.transport.DockerHttpClient;
6+
import com.github.dockerjava.transport.SSLConfig;
97
import com.github.dockerjava.jaxrs.filter.ResponseStatusExceptionFilter;
108
import com.github.dockerjava.jaxrs.filter.SelectiveLoggingFilter;
119
import org.apache.http.client.config.RequestConfig;
@@ -42,12 +40,15 @@
4240
import java.net.URISyntaxException;
4341
import java.util.List;
4442
import java.util.Map;
43+
import java.util.Objects;
4544

4645
public final class JerseyDockerHttpClient implements DockerHttpClient {
4746

4847
public static final class Factory {
4948

50-
private DockerClientConfig dockerClientConfig = null;
49+
private URI dockerHost = null;
50+
51+
private SSLConfig sslConfig = null;
5152

5253
private Integer readTimeout = null;
5354

@@ -65,8 +66,13 @@ public static final class Factory {
6566

6667
private RequestEntityProcessing requestEntityProcessing;
6768

68-
public Factory dockerClientConfig(DockerClientConfig value) {
69-
this.dockerClientConfig = value;
69+
public Factory dockerHost(URI value) {
70+
this.dockerHost = Objects.requireNonNull(value, "dockerHost");
71+
return this;
72+
}
73+
74+
public Factory sslConfig(SSLConfig value) {
75+
this.sslConfig = value;
7076
return this;
7177
}
7278

@@ -112,7 +118,8 @@ public Factory requestEntityProcessing(RequestEntityProcessing value) {
112118

113119
public JerseyDockerHttpClient build() {
114120
return new JerseyDockerHttpClient(
115-
dockerClientConfig,
121+
dockerHost,
122+
sslConfig,
116123
maxTotalConnections,
117124
maxPerRouteConnections,
118125
connectionRequestTimeout,
@@ -134,7 +141,8 @@ public JerseyDockerHttpClient build() {
134141
private final URI originalUri;
135142

136143
private JerseyDockerHttpClient(
137-
DockerClientConfig dockerClientConfig,
144+
URI dockerHost,
145+
SSLConfig sslConfig,
138146
Integer maxTotalConnections,
139147
Integer maxPerRouteConnections,
140148
Integer connectionRequestTimeout,
@@ -152,12 +160,10 @@ private JerseyDockerHttpClient(
152160
clientConfig.property(ClientProperties.REQUEST_ENTITY_PROCESSING, requestEntityProcessing);
153161
}
154162

155-
clientConfig.register(new ResponseStatusExceptionFilter(dockerClientConfig.getObjectMapper()));
163+
clientConfig.register(new ResponseStatusExceptionFilter());
156164
// clientConfig.register(JsonClientFilter.class);
157165
RequestConfig.Builder requestConfigBuilder = RequestConfig.custom();
158166

159-
clientConfig.register(new JacksonJsonProvider(dockerClientConfig.getObjectMapper()));
160-
161167
// logging may disabled via log level
162168
clientConfig.register(new SelectiveLoggingFilter(LOGGER, true));
163169

@@ -187,12 +193,9 @@ private JerseyDockerHttpClient(
187193
}
188194
}
189195

190-
URI dockerHost = dockerClientConfig.getDockerHost();
191-
192196
SSLContext sslContext = null;
193197

194198
try {
195-
final SSLConfig sslConfig = dockerClientConfig.getSSLConfig();
196199
if (sslConfig != null) {
197200
sslContext = sslConfig.getSSLContext();
198201
}

0 commit comments

Comments
0 (0)
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.