package com.github.dockerjava.core.command; import static com.google.common.base.Preconditions.checkNotNull; import java.io.InputStream; import com.github.dockerjava.api.command.CreateImageCmd; import com.github.dockerjava.api.command.CreateImageResponse; /** * Create an image by importing the given stream of a tar file. */ public class CreateImageCmdImpl extends AbstrDockerCmd<CreateImageCmd, CreateImageResponse> implements CreateImageCmd { private String repository, tag; private InputStream imageStream; /** * @param repository * the repository to import to * @param imageStream * the InputStream of the tar file */ public CreateImageCmdImpl(CreateImageCmd.Exec exec, String repository, InputStream imageStream) { super(exec); withRepository(repository); withImageStream(imageStream); } @Override public String getRepository() { return repository; } @Override public String getTag() { return tag; } @Override public InputStream getImageStream() { return imageStream; } /** * @param repository * the repository to import to */ @Override public CreateImageCmdImpl withRepository(String repository) { checkNotNull(repository, "repository was not specified"); this.repository = repository; return this; } /** * @param imageStream * the InputStream of the tar file */ @Override public CreateImageCmdImpl withImageStream(InputStream imageStream) { checkNotNull(imageStream, "imageStream was not specified"); this.imageStream = imageStream; return this; } /** * @param tag * any tag for this image */ @Override public CreateImageCmdImpl withTag(String tag) { checkNotNull(tag, "tag was not specified"); this.tag = tag; return this; } }