package com.github.dockerjava.core.command; import static com.google.common.base.Preconditions.checkNotNull; import java.io.InputStream; import com.fasterxml.jackson.annotation.JsonProperty; import com.github.dockerjava.api.command.CopyFileFromContainerCmd; import com.github.dockerjava.api.exception.NotFoundException; /** * * Copy files or folders from a container. * */ public class CopyFileFromContainerCmdImpl extends AbstrDockerCmd<CopyFileFromContainerCmd, InputStream> implements CopyFileFromContainerCmd { private String containerId; @JsonProperty("HostPath") private String hostPath = "."; @JsonProperty("Resource") private String resource; public CopyFileFromContainerCmdImpl(CopyFileFromContainerCmd.Exec exec, String containerId, String resource) { super(exec); withContainerId(containerId); withResource(resource); } @Override public String getContainerId() { return containerId; } @Override public String getResource() { return resource; } @Override public CopyFileFromContainerCmdImpl withContainerId(String containerId) { checkNotNull(containerId, "containerId was not specified"); this.containerId = containerId; return this; } @Override public CopyFileFromContainerCmdImpl withResource(String resource) { checkNotNull(resource, "resource was not specified"); this.resource = resource; return this; } @Override public String getHostPath() { return hostPath; } @Override public CopyFileFromContainerCmdImpl withHostPath(String hostPath) { checkNotNull(hostPath, "hostPath was not specified"); this.hostPath = hostPath; return this; } /** * @throws NotFoundException * No such container */ @Override public InputStream exec() throws NotFoundException { return super.exec(); } }