Skip to content

Commit 5a7e79c

Browse files
author
Marcus Linke
committed
Fix some CFX interoperability issues
1 parent a19dc6b commit 5a7e79c

14 files changed

Lines changed: 436 additions & 112 deletions

src/main/java/com/github/dockerjava/core/command/CopyFileFromContainerCmdImpl.java

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -84,18 +84,4 @@ public String toString() {
8484
public InputStream exec() throws NotFoundException {
8585
return super.exec();
8686
}
87-
88-
// protected InputStream impl() throws DockerException {
89-
//
90-
// CopyFileFromContainerCmd command = this;
91-
//
92-
// WebTarget webResource =
93-
// baseResource.path("/containers/{id}/copy").resolveTemplate("id", command.getContainerId());
94-
//
95-
// LOGGER.trace("POST: " + webResource.toString());
96-
//
97-
// return webResource.request().accept(MediaType.APPLICATION_OCTET_STREAM_TYPE).post(entity(command, MediaType.APPLICATION_JSON), Response.class).readEntity(InputStream.class);
98-
// }
99-
100-
10187
}
Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import java.io.InputStream;
64

75
import javax.ws.rs.client.WebTarget;
@@ -13,29 +11,34 @@
1311

1412
import com.github.dockerjava.api.command.AttachContainerCmd;
1513

16-
public class AttachContainerCmdExec extends AbstrDockerCmdExec<AttachContainerCmd, InputStream> implements AttachContainerCmd.Exec {
17-
14+
public class AttachContainerCmdExec extends
15+
AbstrDockerCmdExec<AttachContainerCmd, InputStream> implements
16+
AttachContainerCmd.Exec {
17+
1818
private static final Logger LOGGER = LoggerFactory
1919
.getLogger(AttachContainerCmdExec.class);
20-
20+
2121
public AttachContainerCmdExec(WebTarget baseResource) {
2222
super(baseResource);
2323
}
2424

2525
@Override
2626
protected InputStream execute(AttachContainerCmd command) {
27-
WebTarget webResource = getBaseResource().path("/containers/{id}/attach")
28-
.resolveTemplate("id", command.getContainerId())
29-
.queryParam("logs", command.hasLogsEnabled() ? "1" : "0")
30-
// .queryParam("stdin", command.hasStdinEnabled() ? "1" : "0")
31-
.queryParam("stdout", command.hasStdoutEnabled() ? "1" : "0")
32-
.queryParam("stderr", command.hasStderrEnabled() ? "1" : "0")
33-
.queryParam("stream", command.hasFollowStreamEnabled() ? "1" : "0");
27+
WebTarget webResource = getBaseResource()
28+
.path("/containers/{id}/attach")
29+
.resolveTemplate("id", command.getContainerId())
30+
.queryParam("logs", command.hasLogsEnabled() ? "1" : "0")
31+
// .queryParam("stdin", command.hasStdinEnabled() ? "1" : "0")
32+
.queryParam("stdout", command.hasStdoutEnabled() ? "1" : "0")
33+
.queryParam("stderr", command.hasStderrEnabled() ? "1" : "0")
34+
.queryParam("stream",
35+
command.hasFollowStreamEnabled() ? "1" : "0");
3436

3537
LOGGER.trace("POST: {}", webResource);
36-
37-
return webResource.request().accept(MediaType.APPLICATION_OCTET_STREAM_TYPE)
38-
.post(entity(null, MediaType.APPLICATION_JSON), Response.class).readEntity(InputStream.class);
38+
39+
return webResource.request()
40+
.accept(MediaType.APPLICATION_OCTET_STREAM_TYPE)
41+
.post(null, Response.class).readEntity(InputStream.class);
3942
}
4043

4144
}

src/main/java/com/github/dockerjava/jaxrs/ExecCreateCmdExec.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ protected ExecCreateCmdResponse execute(ExecCreateCmd command) {
2525

2626
LOGGER.trace("POST: {}", webResource);
2727

28-
return webResource.request().accept(MediaType.APPLICATION_JSON).post(entity(command, MediaType.APPLICATION_JSON), ExecCreateCmdResponse.class);
28+
return webResource
29+
.request()
30+
.accept(MediaType.APPLICATION_JSON)
31+
.post(entity(command, MediaType.APPLICATION_JSON), ExecCreateCmdResponse.class);
2932
}
3033
}

src/main/java/com/github/dockerjava/jaxrs/ExecStartCmdExec.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ protected InputStream execute(ExecStartCmd command) {
2626

2727
LOGGER.trace("POST: {}", webResource);
2828

29-
return webResource.request().accept(MediaType.APPLICATION_JSON).post(entity(command, MediaType.APPLICATION_JSON), Response.class).readEntity(InputStream.class);
29+
return webResource
30+
.request()
31+
.accept(MediaType.APPLICATION_JSON)
32+
.post(entity(command, MediaType.APPLICATION_JSON), Response.class).readEntity(InputStream.class);
3033
}
3134
}

src/main/java/com/github/dockerjava/jaxrs/KillContainerCmdExec.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import javax.ws.rs.client.WebTarget;
64
import javax.ws.rs.core.MediaType;
75

@@ -10,25 +8,28 @@
108

119
import com.github.dockerjava.api.command.KillContainerCmd;
1210

13-
public class KillContainerCmdExec extends AbstrDockerCmdExec<KillContainerCmd, Void> implements KillContainerCmd.Exec {
14-
11+
public class KillContainerCmdExec extends
12+
AbstrDockerCmdExec<KillContainerCmd, Void> implements
13+
KillContainerCmd.Exec {
14+
1515
private static final Logger LOGGER = LoggerFactory
1616
.getLogger(KillContainerCmdExec.class);
17-
17+
1818
public KillContainerCmdExec(WebTarget baseResource) {
1919
super(baseResource);
2020
}
2121

2222
@Override
2323
protected Void execute(KillContainerCmd command) {
24-
WebTarget webResource = getBaseResource().path("/containers/{id}/kill").resolveTemplate("id", command.getContainerId());
24+
WebTarget webResource = getBaseResource().path("/containers/{id}/kill")
25+
.resolveTemplate("id", command.getContainerId());
2526

26-
if(command.getSignal() != null) {
27+
if (command.getSignal() != null) {
2728
webResource = webResource.queryParam("signal", command.getSignal());
2829
}
29-
30+
3031
LOGGER.trace("POST: {}", webResource);
31-
webResource.request().accept(MediaType.APPLICATION_JSON).post(entity(null, MediaType.APPLICATION_JSON));
32+
webResource.request().accept(MediaType.APPLICATION_JSON).post(null);
3233

3334
return null;
3435
}

src/main/java/com/github/dockerjava/jaxrs/PauseContainerCmdExec.java

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,32 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import javax.ws.rs.client.WebTarget;
64
import javax.ws.rs.core.MediaType;
7-
import javax.ws.rs.core.Response;
85

96
import org.slf4j.Logger;
107
import org.slf4j.LoggerFactory;
118

129
import com.github.dockerjava.api.command.PauseContainerCmd;
1310

14-
public class PauseContainerCmdExec extends AbstrDockerCmdExec<PauseContainerCmd, Void> implements PauseContainerCmd.Exec {
11+
public class PauseContainerCmdExec extends
12+
AbstrDockerCmdExec<PauseContainerCmd, Void> implements
13+
PauseContainerCmd.Exec {
1514

16-
private static final Logger LOGGER = LoggerFactory.getLogger(PauseContainerCmdExec.class);
15+
private static final Logger LOGGER = LoggerFactory
16+
.getLogger(PauseContainerCmdExec.class);
1717

1818
public PauseContainerCmdExec(WebTarget baseResource) {
1919
super(baseResource);
2020
}
2121

2222
@Override
2323
protected Void execute(PauseContainerCmd command) {
24-
WebTarget webResource = getBaseResource().path("/containers/{id}/pause")
25-
.resolveTemplate("id", command.getContainerId());
26-
24+
WebTarget webResource = getBaseResource()
25+
.path("/containers/{id}/pause").resolveTemplate("id",
26+
command.getContainerId());
27+
2728
LOGGER.trace("POST: {}", webResource);
28-
webResource.request()
29-
.accept(MediaType.APPLICATION_JSON)
30-
.post(entity(null, MediaType.APPLICATION_JSON), Response.class);
29+
webResource.request().accept(MediaType.APPLICATION_JSON).post(null);
3130

3231
return null;
3332
}
Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,49 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import com.github.dockerjava.api.command.PullImageCmd;
4-
import com.github.dockerjava.api.model.AuthConfig;
5-
import org.slf4j.Logger;
6-
import org.slf4j.LoggerFactory;
3+
import java.io.InputStream;
74

85
import javax.ws.rs.client.Invocation;
96
import javax.ws.rs.client.WebTarget;
107
import javax.ws.rs.core.MediaType;
11-
import javax.ws.rs.core.Response;
12-
import java.io.InputStream;
138

14-
import static javax.ws.rs.client.Entity.entity;
9+
import org.slf4j.Logger;
10+
import org.slf4j.LoggerFactory;
11+
12+
import com.github.dockerjava.api.command.PullImageCmd;
13+
import com.github.dockerjava.api.model.AuthConfig;
14+
15+
public class PullImageCmdExec extends
16+
AbstrDockerCmdExec<PullImageCmd, InputStream> implements
17+
PullImageCmd.Exec {
18+
19+
private static final Logger LOGGER = LoggerFactory
20+
.getLogger(PullImageCmdExec.class);
1521

16-
public class PullImageCmdExec extends AbstrDockerCmdExec<PullImageCmd, InputStream> implements PullImageCmd.Exec {
17-
18-
private static final Logger LOGGER = LoggerFactory.getLogger(PullImageCmdExec.class);
19-
2022
public PullImageCmdExec(WebTarget baseResource) {
2123
super(baseResource);
2224
}
2325

2426
@Override
2527
protected InputStream execute(PullImageCmd command) {
2628
WebTarget webResource = getBaseResource().path("/images/create")
27-
.queryParam("tag", command.getTag())
28-
.queryParam("fromImage", command.getRepository())
29-
.queryParam("registry", command.getRegistry());
29+
.queryParam("tag", command.getTag())
30+
.queryParam("fromImage", command.getRepository())
31+
.queryParam("registry", command.getRegistry());
3032

3133
LOGGER.trace("POST: {}", webResource);
32-
return resourceWithOptionalAuthConfig(command, webResource.request())
33-
.accept(MediaType.APPLICATION_OCTET_STREAM_TYPE)
34-
.post(entity(Response.class, MediaType.APPLICATION_JSON)).readEntity(InputStream.class);
34+
return resourceWithOptionalAuthConfig(command, webResource.request())
35+
.accept(MediaType.APPLICATION_OCTET_STREAM_TYPE).post(null)
36+
.readEntity(InputStream.class);
3537
}
3638

37-
private Invocation.Builder resourceWithOptionalAuthConfig(PullImageCmd command, Invocation.Builder request) {
38-
AuthConfig authConfig = command.getAuthConfig();
39-
if (authConfig != null) {
40-
request = request.header("X-Registry-Auth", registryAuth(authConfig));
41-
}
42-
return request;
43-
}
39+
private Invocation.Builder resourceWithOptionalAuthConfig(
40+
PullImageCmd command, Invocation.Builder request) {
41+
AuthConfig authConfig = command.getAuthConfig();
42+
if (authConfig != null) {
43+
request = request.header("X-Registry-Auth",
44+
registryAuth(authConfig));
45+
}
46+
return request;
47+
}
4448

4549
}

src/main/java/com/github/dockerjava/jaxrs/PushImageCmdExec.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,40 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import java.io.InputStream;
64

75
import javax.ws.rs.client.WebTarget;
86
import javax.ws.rs.core.MediaType;
9-
import javax.ws.rs.core.Response;
107

118
import org.slf4j.Logger;
129
import org.slf4j.LoggerFactory;
1310

1411
import com.github.dockerjava.api.command.PushImageCmd;
1512
import com.github.dockerjava.api.model.AuthConfig;
1613

17-
public class PushImageCmdExec extends AbstrDockerCmdExec<PushImageCmd, InputStream> implements PushImageCmd.Exec {
18-
19-
private static final Logger LOGGER = LoggerFactory.getLogger(PushImageCmdExec.class);
20-
14+
public class PushImageCmdExec extends
15+
AbstrDockerCmdExec<PushImageCmd, InputStream> implements
16+
PushImageCmd.Exec {
17+
18+
private static final Logger LOGGER = LoggerFactory
19+
.getLogger(PushImageCmdExec.class);
20+
2121
public PushImageCmdExec(WebTarget baseResource) {
2222
super(baseResource);
2323
}
2424

2525
@Override
2626
protected InputStream execute(PushImageCmd command) {
27-
WebTarget webResource = getBaseResource().path("/images/" + name(command) + "/push")
28-
.queryParam("tag", command.getTag());
27+
WebTarget webResource = getBaseResource().path(
28+
"/images/" + name(command) + "/push").queryParam("tag",
29+
command.getTag());
2930

3031
final String registryAuth = registryAuth(command.getAuthConfig());
3132
LOGGER.trace("POST: {}", webResource);
32-
return webResource
33-
.request()
34-
.header("X-Registry-Auth", registryAuth)
35-
.accept(MediaType.APPLICATION_JSON)
36-
.post(entity(Response.class, MediaType.APPLICATION_JSON)).readEntity(InputStream.class);
33+
return webResource.request().header("X-Registry-Auth", registryAuth)
34+
.accept(MediaType.APPLICATION_JSON).post(null)
35+
.readEntity(InputStream.class);
3736
}
38-
37+
3938
private String name(PushImageCmd command) {
4039
String name = command.getName();
4140
AuthConfig authConfig = command.getAuthConfig();

src/main/java/com/github/dockerjava/jaxrs/RestartContainerCmdExec.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import javax.ws.rs.client.WebTarget;
64
import javax.ws.rs.core.MediaType;
75

@@ -10,22 +8,26 @@
108

119
import com.github.dockerjava.api.command.RestartContainerCmd;
1210

13-
public class RestartContainerCmdExec extends AbstrDockerCmdExec<RestartContainerCmd, Void> implements RestartContainerCmd.Exec {
11+
public class RestartContainerCmdExec extends
12+
AbstrDockerCmdExec<RestartContainerCmd, Void> implements
13+
RestartContainerCmd.Exec {
1414

15-
private static final Logger LOGGER = LoggerFactory.getLogger(RestartContainerCmdExec.class);
15+
private static final Logger LOGGER = LoggerFactory
16+
.getLogger(RestartContainerCmdExec.class);
1617

1718
public RestartContainerCmdExec(WebTarget baseResource) {
1819
super(baseResource);
1920
}
2021

2122
@Override
2223
protected Void execute(RestartContainerCmd command) {
23-
WebTarget webResource = getBaseResource().path("/containers/{id}/restart")
24+
WebTarget webResource = getBaseResource()
25+
.path("/containers/{id}/restart")
2426
.resolveTemplate("id", command.getContainerId())
2527
.queryParam("t", String.valueOf(command.getTimeout()));
26-
28+
2729
LOGGER.trace("POST: {}", webResource);
28-
webResource.request().accept(MediaType.APPLICATION_JSON).post(entity(null, MediaType.APPLICATION_JSON_TYPE));
30+
webResource.request().accept(MediaType.APPLICATION_JSON).post(null);
2931

3032
return null;
3133
}

src/main/java/com/github/dockerjava/jaxrs/StopContainerCmdExec.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package com.github.dockerjava.jaxrs;
22

3-
import static javax.ws.rs.client.Entity.entity;
4-
53
import javax.ws.rs.client.WebTarget;
64
import javax.ws.rs.core.MediaType;
75

@@ -10,9 +8,12 @@
108

119
import com.github.dockerjava.api.command.StopContainerCmd;
1210

13-
public class StopContainerCmdExec extends AbstrDockerCmdExec<StopContainerCmd, Void> implements StopContainerCmd.Exec {
11+
public class StopContainerCmdExec extends
12+
AbstrDockerCmdExec<StopContainerCmd, Void> implements
13+
StopContainerCmd.Exec {
1414

15-
private static final Logger LOGGER = LoggerFactory.getLogger(StopContainerCmdExec.class);
15+
private static final Logger LOGGER = LoggerFactory
16+
.getLogger(StopContainerCmdExec.class);
1617

1718
public StopContainerCmdExec(WebTarget baseResource) {
1819
super(baseResource);
@@ -23,9 +24,9 @@ protected Void execute(StopContainerCmd command) {
2324
WebTarget webResource = getBaseResource().path("/containers/{id}/stop")
2425
.resolveTemplate("id", command.getContainerId())
2526
.queryParam("t", String.valueOf(command.getTimeout()));
26-
27+
2728
LOGGER.trace("POST: {}", webResource);
28-
webResource.request().accept(MediaType.APPLICATION_JSON).post(entity(null, MediaType.APPLICATION_JSON));
29+
webResource.request().accept(MediaType.APPLICATION_JSON).post(null);
2930

3031
return null;
3132
}

0 commit comments

Comments
 (0)