From f0e78bdafd77ccf2fa6d6235e8743601261d01a2 Mon Sep 17 00:00:00 2001 From: Ted Crossman Date: Wed, 7 Jan 2015 07:38:29 -0800 Subject: [PATCH] Add support for deleting temporary temp files DockerCmd now extends java.io.Closeable. This allows us to cleanup the temporary tar file created when DockerClient.buildImageCmd(File) is invoked. Code would look like: BuildImageCmd cmd = dockerClient.buildCmd(myDir); try { // .. // cmd.exec(); // ... } finally { cmd.close(); } --- .../dockerjava/api/command/DockerCmd.java | 4 +++- .../core/command/AbstrDockerCmd.java | 7 +++++- .../core/command/BuildImageCmdImpl.java | 22 +++++++++++++++---- 3 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/github/dockerjava/api/command/DockerCmd.java b/src/main/java/com/github/dockerjava/api/command/DockerCmd.java index 4c30382b4..89c31666f 100644 --- a/src/main/java/com/github/dockerjava/api/command/DockerCmd.java +++ b/src/main/java/com/github/dockerjava/api/command/DockerCmd.java @@ -1,6 +1,8 @@ package com.github.dockerjava.api.command; -public interface DockerCmd { +import java.io.Closeable; + +public interface DockerCmd extends Closeable { public RES_T exec(); diff --git a/src/main/java/com/github/dockerjava/core/command/AbstrDockerCmd.java b/src/main/java/com/github/dockerjava/core/command/AbstrDockerCmd.java index 00c89159e..54312c50c 100644 --- a/src/main/java/com/github/dockerjava/core/command/AbstrDockerCmd.java +++ b/src/main/java/com/github/dockerjava/core/command/AbstrDockerCmd.java @@ -1,5 +1,7 @@ package com.github.dockerjava.core.command; +import java.io.IOException; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,4 +27,7 @@ public RES_T exec() throws DockerException { LOGGER.debug("Cmd: {}", this); return execution.exec((CMD_T)this); } -} \ No newline at end of file + + @Override + public void close() throws IOException {} +} diff --git a/src/main/java/com/github/dockerjava/core/command/BuildImageCmdImpl.java b/src/main/java/com/github/dockerjava/core/command/BuildImageCmdImpl.java index a62b75c06..a9c0a44b9 100644 --- a/src/main/java/com/github/dockerjava/core/command/BuildImageCmdImpl.java +++ b/src/main/java/com/github/dockerjava/core/command/BuildImageCmdImpl.java @@ -40,6 +40,7 @@ public class BuildImageCmdImpl extends AbstrDockerCmd