|
1 | 1 | package com.github.dockerjava.jaxrs; |
2 | 2 |
|
3 | | -import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider; |
4 | 3 | import com.github.dockerjava.api.exception.DockerClientException; |
5 | 4 | 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; |
9 | 7 | import com.github.dockerjava.jaxrs.filter.ResponseStatusExceptionFilter; |
10 | 8 | import com.github.dockerjava.jaxrs.filter.SelectiveLoggingFilter; |
11 | 9 | import org.apache.http.client.config.RequestConfig; |
|
42 | 40 | import java.net.URISyntaxException; |
43 | 41 | import java.util.List; |
44 | 42 | import java.util.Map; |
| 43 | +import java.util.Objects; |
45 | 44 |
|
46 | 45 | public final class JerseyDockerHttpClient implements DockerHttpClient { |
47 | 46 |
|
48 | 47 | public static final class Factory { |
49 | 48 |
|
50 | | - private DockerClientConfig dockerClientConfig = null; |
| 49 | + private URI dockerHost = null; |
| 50 | + |
| 51 | + private SSLConfig sslConfig = null; |
51 | 52 |
|
52 | 53 | private Integer readTimeout = null; |
53 | 54 |
|
@@ -65,8 +66,13 @@ public static final class Factory { |
65 | 66 |
|
66 | 67 | private RequestEntityProcessing requestEntityProcessing; |
67 | 68 |
|
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; |
70 | 76 | return this; |
71 | 77 | } |
72 | 78 |
|
@@ -112,7 +118,8 @@ public Factory requestEntityProcessing(RequestEntityProcessing value) { |
112 | 118 |
|
113 | 119 | public JerseyDockerHttpClient build() { |
114 | 120 | return new JerseyDockerHttpClient( |
115 | | - dockerClientConfig, |
| 121 | + dockerHost, |
| 122 | + sslConfig, |
116 | 123 | maxTotalConnections, |
117 | 124 | maxPerRouteConnections, |
118 | 125 | connectionRequestTimeout, |
@@ -134,7 +141,8 @@ public JerseyDockerHttpClient build() { |
134 | 141 | private final URI originalUri; |
135 | 142 |
|
136 | 143 | private JerseyDockerHttpClient( |
137 | | - DockerClientConfig dockerClientConfig, |
| 144 | + URI dockerHost, |
| 145 | + SSLConfig sslConfig, |
138 | 146 | Integer maxTotalConnections, |
139 | 147 | Integer maxPerRouteConnections, |
140 | 148 | Integer connectionRequestTimeout, |
@@ -152,12 +160,10 @@ private JerseyDockerHttpClient( |
152 | 160 | clientConfig.property(ClientProperties.REQUEST_ENTITY_PROCESSING, requestEntityProcessing); |
153 | 161 | } |
154 | 162 |
|
155 | | - clientConfig.register(new ResponseStatusExceptionFilter(dockerClientConfig.getObjectMapper())); |
| 163 | + clientConfig.register(new ResponseStatusExceptionFilter()); |
156 | 164 | // clientConfig.register(JsonClientFilter.class); |
157 | 165 | RequestConfig.Builder requestConfigBuilder = RequestConfig.custom(); |
158 | 166 |
|
159 | | - clientConfig.register(new JacksonJsonProvider(dockerClientConfig.getObjectMapper())); |
160 | | - |
161 | 167 | // logging may disabled via log level |
162 | 168 | clientConfig.register(new SelectiveLoggingFilter(LOGGER, true)); |
163 | 169 |
|
@@ -187,12 +193,9 @@ private JerseyDockerHttpClient( |
187 | 193 | } |
188 | 194 | } |
189 | 195 |
|
190 | | - URI dockerHost = dockerClientConfig.getDockerHost(); |
191 | | - |
192 | 196 | SSLContext sslContext = null; |
193 | 197 |
|
194 | 198 | try { |
195 | | - final SSLConfig sslConfig = dockerClientConfig.getSSLConfig(); |
196 | 199 | if (sslConfig != null) { |
197 | 200 | sslContext = sslConfig.getSSLContext(); |
198 | 201 | } |
|