http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Container.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Container.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Container.java deleted file mode 100644 index 2752529..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Container.java +++ /dev/null @@ -1,389 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import com.google.common.base.Objects; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; -import com.google.gson.annotations.SerializedName; -import org.jclouds.javax.annotation.Nullable; - -import java.beans.ConstructorProperties; -import java.util.List; -import java.util.Map; - -import static com.google.common.base.Preconditions.checkNotNull; - -public class Container { - - @SerializedName("Id") - private final String id; - @SerializedName("Name") - private final String name; - @SerializedName("Created") - private final String created; - @SerializedName("Path") - private final String path; - @SerializedName("Args") - private final String[] args; - @SerializedName("Config") - private final Config containerConfig; - @SerializedName("State") - private final State state; - @SerializedName("Image") - private final String image; - @SerializedName("NetworkSettings") - private final NetworkSettings networkSettings; - @SerializedName("ResolvConfPath") - private final String resolvConfPath; - @SerializedName("Driver") - private final String driver; - @SerializedName("ExecDriver") - private final String execDriver; - @SerializedName("Volumes") - private final Map<String, String> volumes; - @SerializedName("VolumesRW") - private final Map<String, Boolean> volumesRW; - @SerializedName("Command") - private final String command; - @SerializedName("Status") - private final String status; - @SerializedName("HostConfig") - private final HostConfig hostConfig; - @SerializedName("Ports") - private final List<Port> ports; - @SerializedName("HostnamePath") - private final String hostnamePath; - - @ConstructorProperties({ "Id", "Name", "Created", "Path", "Args", "Config", "State", "Image", "NetworkSettings", - "ResolvConfPath", "Driver", "ExecDriver", "Volumes", "VolumesRW", "Command", "Status", "HostConfig", - "Ports", "HostnamePath" }) - protected Container(String id, @Nullable String name, @Nullable String created, @Nullable String path, @Nullable String[] args, - @Nullable Config containerConfig, @Nullable State state, @Nullable String image, @Nullable NetworkSettings networkSettings, - @Nullable String resolvConfPath, @Nullable String driver, @Nullable String execDriver, @Nullable Map<String, String> volumes, - @Nullable Map<String, Boolean> volumesRW, @Nullable String command, @Nullable String status, - @Nullable HostConfig hostConfig, @Nullable List<Port> ports, @Nullable String hostnamePath) { - this.id = checkNotNull(id, "id"); - this.name = name; - this.created = created; - this.path = path; - this.args = args; - this.containerConfig = containerConfig; - this.state = state; - this.image = image; - this.networkSettings = networkSettings; - this.resolvConfPath = resolvConfPath; - this.driver = driver; - this.execDriver = execDriver; - this.volumes = volumes != null ? ImmutableMap.copyOf(volumes) : ImmutableMap.<String, String>of(); - this.volumesRW = volumesRW != null ? ImmutableMap.copyOf(volumesRW) : ImmutableMap.<String, Boolean>of(); - this.command = command; - this.status = status; - this.hostConfig = hostConfig; - this.ports = ports != null ? ImmutableList.copyOf(ports) : ImmutableList.<Port>of(); - this.hostnamePath = hostnamePath; - } - - public String getId() { - return id; - } - - public String getName() { - return name; - } - - public String getCreated() { - return created; - } - - public String getPath() { - return path; - } - - public String[] getArgs() { - return args; - } - - public Config getContainerConfig() { - return containerConfig; - } - - public State getState() { - return state; - } - - public String getImage() { - return image; - } - - public NetworkSettings getNetworkSettings() { - return networkSettings; - } - - public String getResolvConfPath() { - return resolvConfPath; - } - - public String getDriver() { - return driver; - } - - public String getExecDriver() { - return execDriver; - } - - public Map<String, String> getVolumes() { - return volumes; - } - - public Map<String, Boolean> getvolumesRW() { - return volumesRW; - } - - public String getCommand() { - return command; - } - - public String getStatus() { - return status; - } - - public HostConfig getHostConfig() { - return hostConfig; - } - - public List<Port> getPorts() { - return ports; - } - - public String getHostnamePath() { - return hostnamePath; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - Container that = (Container) o; - - return Objects.equal(this.id, that.id) && - Objects.equal(this.name, that.name) && - Objects.equal(this.created, that.created) && - Objects.equal(this.path, that.path) && - Objects.equal(this.args, that.args) && - Objects.equal(this.containerConfig, that.containerConfig) && - Objects.equal(this.state, that.state) && - Objects.equal(this.image, that.image) && - Objects.equal(this.networkSettings, that.networkSettings) && - Objects.equal(this.resolvConfPath, that.resolvConfPath) && - Objects.equal(this.driver, that.driver) && - Objects.equal(this.execDriver, that.execDriver) && - Objects.equal(this.volumes, that.volumes) && - Objects.equal(this.volumesRW, that.volumesRW) && - Objects.equal(this.command, that.command) && - Objects.equal(this.status, that.status) && - Objects.equal(this.hostConfig, that.hostConfig) && - Objects.equal(this.ports, that.ports) && - Objects.equal(this.hostnamePath, that.hostnamePath); - } - - @Override - public int hashCode() { - return Objects.hashCode(id, name, created, path, args, containerConfig, state, image, networkSettings, resolvConfPath, - driver, execDriver, volumes, volumesRW, command, status, hostConfig, ports, hostnamePath); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("id", id) - .add("name", name) - .add("created", created) - .add("path", path) - .add("args", args) - .add("containerConfig", containerConfig) - .add("state", state) - .add("image", image) - .add("networkSettings", networkSettings) - .add("resolvConfPath", resolvConfPath) - .add("driver", driver) - .add("execDriver", execDriver) - .add("volumes", volumes) - .add("volumesRW", volumesRW) - .add("command", command) - .add("status", status) - .add("hostConfig", hostConfig) - .add("ports", ports) - .add("hostnamePath", hostnamePath) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromContainer(this); - } - - public static final class Builder { - - private String id; - private String name; - private String created; - private String path; - private String[] args; - private Config containerConfig; - private State state; - private String image; - private NetworkSettings networkSettings; - private String resolvConfPath; - private String driver; - private String execDriver; - private Map<String, String> volumes = ImmutableMap.of(); - private Map<String, Boolean> volumesRW = ImmutableMap.of(); - private String command; - private String status; - private HostConfig hostConfig; - private List<Port> ports = ImmutableList.of(); - private String hostnamePath; - - public Builder id(String id) { - this.id = id; - return this; - } - - public Builder name(String name) { - this.name = name; - return this; - } - - public Builder created(String created) { - this.created = created; - return this; - } - - public Builder path(String path) { - this.path = path; - return this; - } - - public Builder args(String[] args) { - this.args = args; - return this; - } - - public Builder containerConfig(Config containerConfig) { - this.containerConfig = containerConfig; - return this; - } - - public Builder state(State state) { - this.state = state; - return this; - } - - public Builder image(String imageName) { - this.image = imageName; - return this; - } - - public Builder networkSettings(NetworkSettings networkSettings) { - this.networkSettings = networkSettings; - return this; - } - - public Builder resolvConfPath(String resolvConfPath) { - this.resolvConfPath = resolvConfPath; - return this; - } - - public Builder driver(String driver) { - this.driver = driver; - return this; - } - - public Builder execDriver(String execDriver) { - this.execDriver = execDriver; - return this; - } - - public Builder volumes(Map<String, String> volumes) { - this.volumes = volumes; - return this; - } - - public Builder volumesRW(Map<String, Boolean> volumesRW) { - this.volumesRW = volumesRW; - return this; - } - - public Builder command(String command) { - this.command = command; - return this; - } - - public Builder status(String status) { - this.status = status; - return this; - } - - public Builder hostConfig(HostConfig hostConfig) { - this.hostConfig = hostConfig; - return this; - } - - public Builder ports(List<Port> ports) { - this.ports = ports; - return this; - } - - public Builder hostnamePath(String hostnamePath) { - this.hostnamePath = hostnamePath; - return this; - } - - public Container build() { - return new Container(id, name, created, path, args, containerConfig, state, image, networkSettings, resolvConfPath, - driver, execDriver, volumes, volumesRW, command, status, hostConfig, ports, hostnamePath); - } - - public Builder fromContainer(Container in) { - return this - .id(in.getId()) - .name(in.getName()) - .created(in.getCreated()) - .path(in.getPath()) - .args(in.getArgs()) - .containerConfig(in.getContainerConfig()) - .state(in.getState()) - .image(in.getImage()) - .networkSettings(in.getNetworkSettings()) - .resolvConfPath(in.getResolvConfPath()) - .driver(in.getDriver()) - .execDriver(in.getExecDriver()) - .volumes(in.getVolumes()) - .volumesRW(in.getvolumesRW()) - .command(in.getCommand()) - .status(in.getStatus()) - .hostConfig(in.getHostConfig()) - .ports(in.getPorts()) - .hostnamePath(in.getHostnamePath()); - } - } -}
http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/ExposedPorts.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/ExposedPorts.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/ExposedPorts.java deleted file mode 100644 index b7a831a..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/ExposedPorts.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import static com.google.common.base.Preconditions.checkNotNull; -import java.beans.ConstructorProperties; -import java.util.Set; - -import org.jclouds.javax.annotation.Nullable; - -import com.google.common.base.Objects; -import com.google.common.collect.ImmutableSet; -import com.google.gson.annotations.SerializedName; - -public class ExposedPorts { - - @SerializedName("PortAndProtocol") - private final String portAndProtocol; - @SerializedName("HostPorts") - private final Set<String> hostPorts; - - @ConstructorProperties({ "PortAndProtocol", "HostPorts" }) - protected ExposedPorts(String portAndProtocol, @Nullable Set<String> hostPorts) { - this.portAndProtocol = checkNotNull(portAndProtocol, "portAndProtocol"); - this.hostPorts = hostPorts != null ? ImmutableSet.copyOf(hostPorts) : ImmutableSet.<String> of(); - } - - public String getPortAndProtocol() { - return portAndProtocol; - } - - public Set<String> getHostPorts() { - return hostPorts; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - ExposedPorts that = (ExposedPorts) o; - - return Objects.equal(this.portAndProtocol, that.portAndProtocol) && - Objects.equal(this.hostPorts, that.hostPorts); - } - - @Override - public int hashCode() { - return Objects.hashCode(portAndProtocol, hostPorts); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("portAndProtocol", portAndProtocol) - .add("hostPorts", hostPorts) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromExposedPorts(this); - } - - public static final class Builder { - - private String portAndProtocol; - private Set<String> hostPorts = ImmutableSet.of(); - - public Builder portAndProtocol(String portAndProtocol) { - this.portAndProtocol = portAndProtocol; - return this; - } - - public Builder hostPorts(Set<String> hostPorts) { - this.hostPorts = ImmutableSet.copyOf(checkNotNull(hostPorts, "hostPorts")); - return this; - } - - public ExposedPorts build() { - return new ExposedPorts(portAndProtocol, hostPorts); - } - - public Builder fromExposedPorts(ExposedPorts in) { - return this.portAndProtocol(in.getPortAndProtocol()) - .hostPorts(in.getHostPorts()); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/HostConfig.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/HostConfig.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/HostConfig.java deleted file mode 100644 index 275961f..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/HostConfig.java +++ /dev/null @@ -1,242 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import static com.google.common.base.Preconditions.checkNotNull; -import java.beans.ConstructorProperties; -import java.util.List; -import java.util.Map; - -import org.jclouds.javax.annotation.Nullable; - -import com.google.common.base.Objects; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Lists; -import com.google.common.collect.Maps; -import com.google.gson.annotations.SerializedName; - -public class HostConfig { - - @SerializedName("ContainerIDFile") - private final String containerIDFile; - @SerializedName("Binds") - private final List<String> binds; - @SerializedName("LxcConf") - private final Map<String, String> lxcConf; - @SerializedName("Privileged") - private final boolean privileged; - @SerializedName("Dns") - private final String dns; - @SerializedName("DnsSearch") - private final String dnsSearch; - @SerializedName("PortBindings") - private final Map<String, List<Map<String, String>>> portBindings; - @SerializedName("Links") - private final List<String> links; - @SerializedName("PublishAllPorts") - private final boolean publishAllPorts; - @SerializedName("VolumesFrom") - private final List<String> volumesFrom; - - @ConstructorProperties({ "ContainerIDFile", "Binds", "LxcConf", "Privileged", "Dns", "DnsSearch", "PortBindings", - "Links", "PublishAllPorts", "VolumesFrom" }) - protected HostConfig(@Nullable String containerIDFile, @Nullable List<String> binds, - Map<String, String> lxcConf, boolean privileged, @Nullable String dns, - @Nullable String dnsSearch, @Nullable Map<String, List<Map<String, String>>> portBindings, - @Nullable List<String> links, boolean publishAllPorts, @Nullable List<String> volumesFrom) { - this.containerIDFile = containerIDFile; - this.binds = binds != null ? ImmutableList.copyOf(binds) : ImmutableList.<String> of(); - this.lxcConf = lxcConf != null ? ImmutableMap.copyOf(lxcConf) : ImmutableMap.<String, String> of(); - this.privileged = checkNotNull(privileged, "privileged"); - this.dns = dns; - this.dnsSearch = dnsSearch; - this.portBindings = portBindings != null ? ImmutableMap.copyOf(portBindings) : ImmutableMap.<String, List<Map<String, String>>> of(); - this.links = links != null ? ImmutableList.copyOf(links) : ImmutableList.<String> of(); - this.publishAllPorts = checkNotNull(publishAllPorts, "publishAllPorts"); - this.volumesFrom = volumesFrom != null ? ImmutableList.copyOf(volumesFrom) : ImmutableList.<String> of(); - } - - public String getContainerIDFile() { - return containerIDFile; - } - - public List<String> getBinds() { - return binds; - } - - public Map<String, String> getLxcConf() { - return lxcConf; - } - - public boolean isPrivileged() { - return privileged; - } - - public String getDns() { return dns; } - - public String getDnsSearch() { return dnsSearch; } - - public Map<String, List<Map<String, String>>> getPortBindings() { - return portBindings; - } - - @Nullable - public List<String> getLinks() { - return links; - } - - public boolean isPublishAllPorts() { - return publishAllPorts; - } - - public List<String> getVolumesFrom() { - return volumesFrom; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - HostConfig that = (HostConfig) o; - - return Objects.equal(this.containerIDFile, that.containerIDFile) && - Objects.equal(this.binds, that.binds) && - Objects.equal(this.lxcConf, that.lxcConf) && - Objects.equal(this.privileged, that.privileged) && - Objects.equal(this.dns, that.dns) && - Objects.equal(this.dnsSearch, that.dnsSearch) && - Objects.equal(this.portBindings, that.portBindings) && - Objects.equal(this.links, that.links) && - Objects.equal(this.publishAllPorts, that.publishAllPorts) && - Objects.equal(this.volumesFrom, that.volumesFrom); - } - - @Override - public int hashCode() { - return Objects.hashCode(containerIDFile, binds, lxcConf, privileged, dns, dnsSearch, portBindings, links, - publishAllPorts, volumesFrom); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("containerIDFile", containerIDFile) - .add("binds", binds) - .add("lxcConf", lxcConf) - .add("privileged", privileged) - .add("dns", dns) - .add("dnsSearch", dnsSearch) - .add("portBindings", portBindings) - .add("links", links) - .add("publishAllPorts", publishAllPorts) - .add("volumesFrom", volumesFrom) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromHostConfig(this); - } - - public static final class Builder { - - private String containerIDFile; - private List<String> binds = Lists.newArrayList(); - private Map<String, String> lxcConf = Maps.newLinkedHashMap(); - private boolean privileged; - private String dns; - private String dnsSearch; - private Map<String, List<Map<String, String>>> portBindings = Maps.newLinkedHashMap(); - private List<String> links = Lists.newArrayList(); - private boolean publishAllPorts; - private List<String> volumesFrom = Lists.newArrayList(); - - public Builder containerIDFile(String containerIDFile) { - this.containerIDFile = containerIDFile; - return this; - } - - public Builder binds(List<String> binds) { - this.binds.addAll(checkNotNull(binds, "binds")); - return this; - } - - public Builder lxcConf(Map<String, String> lxcConf) { - this.lxcConf.putAll(checkNotNull(lxcConf, "lxcConf")); - return this; - } - - public Builder privileged(boolean privileged) { - this.privileged = privileged; - return this; - } - - public Builder dns(String dns) { - this.dns = dns; - return this; - } - - public Builder dnsSearch(String dnsSearch) { - this.dnsSearch = dnsSearch; - return this; - } - - public Builder links(List<String> links) { - this.links.addAll(checkNotNull(links, "links")); - return this; - } - - public Builder portBindings(Map<String, List<Map<String, String>>> portBindings) { - this.portBindings.putAll(portBindings); - return this; - } - - public Builder publishAllPorts(boolean publishAllPorts) { - this.publishAllPorts = publishAllPorts; - return this; - } - - public Builder volumesFrom(List<String> volumesFrom) { - this.volumesFrom.addAll(checkNotNull(volumesFrom, "volumesFrom")); - return this; - } - - public HostConfig build() { - return new HostConfig(containerIDFile, binds, lxcConf, privileged, dns, dnsSearch, portBindings, links, - publishAllPorts, volumesFrom); - } - - public Builder fromHostConfig(HostConfig in) { - return this - .containerIDFile(in.getContainerIDFile()) - .binds(in.getBinds()) - .lxcConf(in.getLxcConf()) - .privileged(in.isPrivileged()) - .dns(in.getDns()) - .dnsSearch(in.getDnsSearch()) - .links(in.getLinks()) - .portBindings(in.getPortBindings()) - .publishAllPorts(in.isPublishAllPorts()) - .volumesFrom(in.getVolumesFrom()); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Image.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Image.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Image.java deleted file mode 100644 index 186ece3..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Image.java +++ /dev/null @@ -1,239 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import com.google.common.base.Objects; -import com.google.common.collect.ImmutableList; -import com.google.gson.annotations.SerializedName; -import org.jclouds.javax.annotation.Nullable; - -import java.beans.ConstructorProperties; -import java.util.List; - -import static com.google.common.base.Preconditions.checkNotNull; - -public class Image { - - @SerializedName("Id") - private final String id; - @SerializedName("Parent") - private final String parent; - @SerializedName("Created") - private final String created; - @SerializedName("Container") - private final String container; - @SerializedName("DockerVersion") - private final String dockerVersion; - @SerializedName("Architecture") - private final String architecture; - @SerializedName("Os") - private final String os; - @SerializedName("Size") - private final long size; - @SerializedName("VirtualSize") - private final long virtualSize; - @SerializedName("RepoTags") - private final List<String> repoTags; - - @ConstructorProperties({ "Id", "Parent", "Created", "Container", "DockerVersion", "Architecture", "Os", "Size", - "VirtualSize", "RepoTags", "Architecture" }) - protected Image(String id, @Nullable String parent, @Nullable String created, @Nullable String container, - @Nullable String dockerVersion, @Nullable String architecture, @Nullable String os, long size, - @Nullable long virtualSize, @Nullable List<String> repoTags) { - this.id = checkNotNull(id, "id"); - this.parent = parent; - this.created = created; - this.container = container; - this.dockerVersion = dockerVersion; - this.architecture = architecture; - this.os = os; - this.size = size; - this.virtualSize = virtualSize; - this.repoTags = repoTags != null ? ImmutableList.copyOf(repoTags) : ImmutableList.<String> of(); - } - - public String getId() { - return id; - } - - public String getParent() { - return parent; - } - - public String getCreated() { - return created; - } - - public String getContainer() { - return container; - } - - public String getDockerVersion() { - return dockerVersion; - } - - public String getArchitecture() { - return architecture; - } - - public String getOs() { - return os; - } - - public long getSize() { - return size; - } - - public long getVirtualSize() { - return virtualSize; - } - - public List<String> getRepoTags() { - return repoTags; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - Image that = (Image) o; - - return Objects.equal(this.id, that.id) && - Objects.equal(this.parent, that.parent) && - Objects.equal(this.created, that.created) && - Objects.equal(this.container, that.container) && - Objects.equal(this.dockerVersion, that.dockerVersion) && - Objects.equal(this.architecture, that.architecture) && - Objects.equal(this.os, that.os) && - Objects.equal(this.size, that.size) && - Objects.equal(this.virtualSize, that.virtualSize); - } - - @Override - public int hashCode() { - return Objects.hashCode(id, parent, created, container, dockerVersion, architecture, os, size, - virtualSize); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("id", id) - .add("parent", parent) - .add("created", created) - .add("container", container) - .add("dockerVersion", dockerVersion) - .add("architecture", architecture) - .add("os", os) - .add("size", size) - .add("virtualSize", virtualSize) - .add("repoTags", repoTags) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromImage(this); - } - - public static final class Builder { - - private String id; - private String parent; - private String created; - private String container; - private String dockerVersion; - private String architecture; - private String os; - private long size; - private long virtualSize; - private List<String> repoTags = ImmutableList.of(); - - public Builder id(String id) { - this.id = id; - return this; - } - - public Builder parent(String parent) { - this.parent = parent; - return this; - } - - public Builder created(String created) { - this.created = created; - return this; - } - - public Builder container(String container) { - this.container = container; - return this; - } - - public Builder dockerVersion(String dockerVersion) { - this.dockerVersion = dockerVersion; - return this; - } - - public Builder architecture(String architecture) { - this.architecture = architecture; - return this; - } - - public Builder os(String os) { - this.os = os; - return this; - } - - public Builder size(long size) { - this.size = size; - return this; - } - - public Builder virtualSize(long virtualSize) { - this.virtualSize = virtualSize; - return this; - } - - public Builder repoTags(List<String> repoTags) { - this.repoTags = ImmutableList.copyOf(checkNotNull(repoTags, "repoTags")); - return this; - } - - public Image build() { - return new Image(id, parent, created, container, dockerVersion, architecture, os, size, - virtualSize, repoTags); - } - - public Builder fromImage(Image in) { - return this - .id(in.getId()) - .parent(in.getParent()) - .created(in.getCreated()) - .container(in.getContainer()) - .dockerVersion(in.getDockerVersion()) - .architecture(in.getArchitecture()) - .os(in.getOs()) - .size(in.getSize()) - .virtualSize(in.getVirtualSize()); - //DO NOT add .repoTags(in.getRepoTags()); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/NetworkSettings.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/NetworkSettings.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/NetworkSettings.java deleted file mode 100644 index 23f3fbe..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/NetworkSettings.java +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import com.google.common.base.Objects; -import com.google.common.collect.ImmutableMap; -import com.google.gson.annotations.SerializedName; -import org.jclouds.javax.annotation.Nullable; - -import java.beans.ConstructorProperties; -import java.util.List; -import java.util.Map; - -import static com.google.common.base.Preconditions.checkNotNull; - -public class NetworkSettings { - - @SerializedName("IPAddress") - private final String ipAddress; - @SerializedName("IPPrefixLen") - private final int ipPrefixLen; - @SerializedName("Gateway") - private final String gateway; - @SerializedName("Bridge") - private final String bridge; - @SerializedName("PortMapping") - private final String portMapping; - @SerializedName("Ports") - private final Map<String, List<Map<String, String>>> ports; - - @ConstructorProperties({ "IPAddress", "IPPrefixLen", "Gateway", "Bridge", "PortMapping", "Ports" }) - protected NetworkSettings(String ipAddress, int ipPrefixLen, String gateway, String bridge, - @Nullable String portMapping, @Nullable Map<String, List<Map<String, String>>> ports) { - this.ipAddress = checkNotNull(ipAddress, "ipAddress"); - this.ipPrefixLen = checkNotNull(ipPrefixLen, "ipPrefixLen"); - this.gateway = checkNotNull(gateway, "gateway"); - this.bridge = checkNotNull(bridge, "bridge"); - this.portMapping = portMapping; - this.ports = ports != null ? ImmutableMap.copyOf(ports) : ImmutableMap.<String, List<Map<String, String>>> of(); - } - - public String getIpAddress() { - return ipAddress; - } - - public int getIpPrefixLen() { - return ipPrefixLen; - } - - public String getGateway() { - return gateway; - } - - public String getBridge() { - return bridge; - } - - public String getPortMapping() { - return portMapping; - } - - public Map<String, List<Map<String, String>>> getPorts() { - return ports; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - NetworkSettings that = (NetworkSettings) o; - - return Objects.equal(this.ipAddress, that.ipAddress) && - Objects.equal(this.ipPrefixLen, that.ipPrefixLen) && - Objects.equal(this.gateway, that.gateway) && - Objects.equal(this.bridge, that.bridge) && - Objects.equal(this.portMapping, that.portMapping) && - Objects.equal(this.ports, that.ports); - } - - @Override - public int hashCode() { - return Objects.hashCode(ipAddress, ipPrefixLen, gateway, bridge, portMapping, ports); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("ipAddress", ipAddress) - .add("ipPrefixLen", ipPrefixLen) - .add("gateway", gateway) - .add("bridge", bridge) - .add("portMapping", portMapping) - .add("ports", ports) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromNetworkSettings(this); - } - - public static final class Builder { - - private String ipAddress; - private int ipPrefixLen; - private String gateway; - private String bridge; - private String portMapping; - private Map<String, List<Map<String, String>>> ports = ImmutableMap.of(); - - public Builder ipAddress(String ipAddress) { - this.ipAddress = ipAddress; - return this; - } - - public Builder ipPrefixLen(int ipPrefixLen) { - this.ipPrefixLen = ipPrefixLen; - return this; - } - - public Builder gateway(String gateway) { - this.gateway = gateway; - return this; - } - - public Builder bridge(String bridge) { - this.bridge = bridge; - return this; - } - - public Builder portMapping(String portMapping) { - this.portMapping = portMapping; - return this; - } - - public Builder ports(Map<String, List<Map<String, String>>> ports) { - this.ports = ImmutableMap.copyOf(checkNotNull(ports, "ports")); - return this; - } - - public NetworkSettings build() { - return new NetworkSettings(ipAddress, ipPrefixLen, gateway, bridge, portMapping, ports); - } - - public Builder fromNetworkSettings(NetworkSettings in) { - return this - .ipAddress(in.getIpAddress()) - .ipPrefixLen(in.getIpPrefixLen()) - .gateway(in.getGateway()) - .bridge(in.getBridge()) - .portMapping(in.getPortMapping()) - .ports(in.getPorts()); - } - - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Port.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Port.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Port.java deleted file mode 100644 index b49dfa6..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Port.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import com.google.common.base.Objects; -import com.google.gson.annotations.SerializedName; - -import java.beans.ConstructorProperties; - -import static com.google.common.base.Preconditions.checkNotNull; - -public class Port { - - @SerializedName("PrivatePort") - private final int privatePort; - @SerializedName("PublicPort") - private final int publicPort; - @SerializedName("Type") - private final String type; - @SerializedName("IP") - private final String ip; - - @ConstructorProperties({ "PrivatePort", "PublicPort", "Type", "IP" }) - protected Port(int privatePort, int publicPort, String type, String ip) { - this.privatePort = checkNotNull(privatePort, "privatePort"); - this.publicPort = checkNotNull(publicPort, "publicPort"); - this.type = checkNotNull(type, "type"); - this.ip = checkNotNull(ip, "ip"); - } - - public int getPrivatePort() { - return privatePort; - } - - public int getPublicPort() { - return publicPort; - } - - public String getType() { - return type; - } - - public String getIp() { - return ip; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - Port that = (Port) o; - - return Objects.equal(this.privatePort, that.privatePort) && - Objects.equal(this.publicPort, that.publicPort) && - Objects.equal(this.type, that.type) && - Objects.equal(this.ip, that.ip); - } - - @Override - public int hashCode() { - return Objects.hashCode(privatePort, publicPort, type, ip); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("privatePort", privatePort) - .add("publicPort", publicPort) - .add("type", type) - .add("ip", ip) - .toString(); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/State.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/State.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/State.java deleted file mode 100644 index ac1ba85..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/State.java +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import static com.google.common.base.Preconditions.checkNotNull; -import java.beans.ConstructorProperties; - -import com.google.common.base.Objects; -import com.google.gson.annotations.SerializedName; - -public class State { - @SerializedName("Pid") - private final int pid; - @SerializedName("Running") - private final boolean running; - @SerializedName("ExitCode") - private final int exitCode; - @SerializedName("StartedAt") - private final String startedAt; - @SerializedName("FinishedAt") - private final String finishedAt; - @SerializedName("Ghost") - private final boolean ghost; - - @ConstructorProperties({ "Pid", "Running", "ExitCode", "StartedAt", "FinishedAt", "Ghost" }) - protected State(int pid, boolean running, int exitCode, String startedAt, String finishedAt, boolean ghost) { - this.pid = checkNotNull(pid, "pid"); - this.running = checkNotNull(running, "running"); - this.exitCode = checkNotNull(exitCode, "exitCode"); - this.startedAt = checkNotNull(startedAt, "startedAt"); - this.finishedAt = checkNotNull(finishedAt, "finishedAt"); - this.ghost = checkNotNull(ghost, "ghost"); - } - - public int getPid() { - return pid; - } - - public boolean isRunning() { - return running; - } - - public int getExitCode() { - return exitCode; - } - - public String getStartedAt() { - return startedAt; - } - - public String getFinishedAt() { - return finishedAt; - } - - public boolean isGhost() { - return ghost; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - State that = (State) o; - - return Objects.equal(this.pid, that.pid) && - Objects.equal(this.running, that.running) && - Objects.equal(this.exitCode, that.exitCode) && - Objects.equal(this.startedAt, that.startedAt) && - Objects.equal(this.finishedAt, that.finishedAt) && - Objects.equal(this.ghost, that.ghost); - } - - @Override - public int hashCode() { - return Objects.hashCode(pid, running, exitCode, startedAt, finishedAt, ghost); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("pid", pid) - .add("running", running) - .add("exitCode", exitCode) - .add("startedAt", startedAt) - .add("finishedAt", finishedAt) - .add("ghost", ghost) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromState(this); - } - - public static final class Builder { - - private int pid; - private boolean running; - private int exitCode; - private String startedAt; - private String finishedAt; - private boolean ghost; - - public Builder pid(int pid) { - this.pid = pid; - return this; - } - - public Builder running(boolean running) { - this.running = running; - return this; - } - - public Builder exitCode(int exitCode) { - this.exitCode = exitCode; - return this; - } - - public Builder startedAt(String startedAt) { - this.startedAt = startedAt; - return this; - } - - public Builder finishedAt(String finishedAt) { - this.finishedAt = finishedAt; - return this; - } - - public Builder ghost(boolean ghost) { - this.ghost = ghost; - return this; - } - - public State build() { - return new State(pid, running, exitCode, startedAt, finishedAt, ghost); - } - - public Builder fromState(State in) { - return this - .pid(in.getPid()) - .running(in.isRunning()) - .exitCode(in.getExitCode()) - .startedAt(in.getStartedAt()) - .finishedAt(in.getFinishedAt()) - .ghost(in.isGhost()); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Version.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Version.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Version.java deleted file mode 100644 index 445a225..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/domain/Version.java +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.domain; - -import static com.google.common.base.Preconditions.checkNotNull; -import java.beans.ConstructorProperties; - -import com.google.common.base.Objects; -import com.google.gson.annotations.SerializedName; - -public class Version { - @SerializedName("Arch") - private final String arch; - @SerializedName("GitCommit") - private final String gitCommit; - @SerializedName("GoVersion") - private final String goVersion; - @SerializedName("KernelVersion") - private final String kernelVersion; - @SerializedName("Os") - private final String os; - @SerializedName("Version") - private final String version; - - @ConstructorProperties({ "Arch", "GitCommit", "GoVersion", "KernelVersion", "Os", "Version" }) - protected Version(String arch, String gitCommit, String goVersion, String kernelVersion, String os, String version) { - this.arch = checkNotNull(arch, "arch"); - this.gitCommit = checkNotNull(gitCommit, "gitCommit"); - this.goVersion = checkNotNull(goVersion, "goVersion"); - this.kernelVersion = checkNotNull(kernelVersion, "kernelVersion"); - this.os = checkNotNull(os, "os"); - this.version = checkNotNull(version, "version"); - } - - public String getArch() { - return arch; - } - - public String getGitCommit() { - return gitCommit; - } - - public String getGoVersion() { - return goVersion; - } - - public String getKernelVersion() { - return kernelVersion; - } - - public String getOs() { - return os; - } - - public String getVersion() { - return version; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - Version that = (Version) o; - - return Objects.equal(this.arch, that.arch) && - Objects.equal(this.gitCommit, that.gitCommit) && - Objects.equal(this.goVersion, that.goVersion) && - Objects.equal(this.kernelVersion, that.kernelVersion) && - Objects.equal(this.os, that.os) && - Objects.equal(this.version, that.version); - } - - @Override - public int hashCode() { - return Objects.hashCode(arch, gitCommit, goVersion, kernelVersion, os, version); - } - - @Override - public String toString() { - return Objects.toStringHelper(this) - .add("arch", arch) - .add("gitCommit", gitCommit) - .add("goVersion", goVersion) - .add("kernelVersion", kernelVersion) - .add("os", os) - .add("version", version) - .toString(); - } - - public static Builder builder() { - return new Builder(); - } - - public Builder toBuilder() { - return builder().fromVersion(this); - } - - public static final class Builder { - - private String arch; - private String gitCommit; - private String goVersion; - private String kernelVersion; - private String os; - private String version; - - public Builder arch(String arch) { - this.arch = arch; - return this; - } - - public Builder gitCommit(String gitCommit) { - this.gitCommit = gitCommit; - return this; - } - - public Builder goVersion(String goVersion) { - this.goVersion = goVersion; - return this; - } - - public Builder kernelVersion(String kernelVersion) { - this.kernelVersion = kernelVersion; - return this; - } - - public Builder os(String os) { - this.os = os; - return this; - } - - public Builder version(String version) { - this.version = version; - return this; - } - - public Version build() { - return new Version(arch, gitCommit, goVersion, kernelVersion, os, version); - } - - public Builder fromVersion(Version in) { - return this - .arch(in.getArch()) - .gitCommit(in.getGitCommit()) - .goVersion(in.getGoVersion()) - .kernelVersion(in.getKernelVersion()) - .os(in.getOs()) - .version(in.getVersion()); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/RemoteApi.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/RemoteApi.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/RemoteApi.java deleted file mode 100644 index 96b0228..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/RemoteApi.java +++ /dev/null @@ -1,272 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.features; - -import java.io.Closeable; -import java.io.File; -import java.io.InputStream; -import java.util.Set; - -import javax.inject.Named; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; - -import org.jclouds.Fallbacks; -import org.jclouds.docker.binders.BindInputStreamToRequest; -import org.jclouds.docker.domain.Config; -import org.jclouds.docker.domain.Container; -import org.jclouds.docker.domain.HostConfig; -import org.jclouds.docker.domain.Image; -import org.jclouds.docker.domain.Version; -import org.jclouds.docker.options.BuildOptions; -import org.jclouds.docker.options.CommitOptions; -import org.jclouds.docker.options.CreateImageOptions; -import org.jclouds.docker.options.DeleteImageOptions; -import org.jclouds.docker.options.ListContainerOptions; -import org.jclouds.docker.options.ListImageOptions; -import org.jclouds.docker.options.RemoveContainerOptions; -import org.jclouds.io.Payload; -import org.jclouds.rest.annotations.BinderParam; -import org.jclouds.rest.annotations.Fallback; -import org.jclouds.rest.annotations.Headers; -import org.jclouds.rest.binders.BindToJsonPayload; - -@Consumes(MediaType.APPLICATION_JSON) -public interface RemoteApi extends Closeable { - - /** - * Get the information of the current docker version. - * - * @return The information of the current docker version. - */ - @Named("version") - @GET - @Path("/version") - Version getVersion(); - - /** - * List all running containers - * - * @return a set of containers - */ - @Named("containers:list") - @GET - @Path("/containers/json") - @Fallback(Fallbacks.EmptySetOnNotFoundOr404.class) - Set<Container> listContainers(); - - /** - * List all running containers - * - * @param options the options to list the containers (@see ListContainerOptions) - * @return a set of containers - */ - @Named("containers:list") - @GET - @Path("/containers/json") - @Fallback(Fallbacks.EmptySetOnNotFoundOr404.class) - Set<Container> listContainers(ListContainerOptions options); - - /** - * Create a container - * - * @param name the name for the new container. Must match /?[a-zA-Z0-9_-]+. - * @param config the containerâs configuration (@see BindToJsonPayload) - * @return a new container - */ - @Named("container:create") - @POST - @Path("/containers/create") - Container createContainer(@QueryParam("name") String name, @BinderParam(BindToJsonPayload.class) Config config); - - /** - * Return low-level information on the container id - * @param containerId The id of the container to get. - * @return The details of the container or <code>null</code> if the container with the given id doesn't exist. - */ - @Named("container:inspect") - @GET - @Path("/containers/{id}/json") - @Fallback(Fallbacks.NullOnNotFoundOr404.class) - Container inspectContainer(@PathParam("id") String containerId); - - /** - * Remove the container by id from the filesystem - * - * @param containerId The id of the container to be removed. - */ - @Named("container:delete") - @DELETE - @Path("/containers/{id}") - void removeContainer(@PathParam("id") String containerId); - - /** - * Remove the container by id from the filesystem - * - * @param containerId The id of the container to be removed. - * @param options the operationâs configuration (@see RemoveContainerOptions) - */ - @Named("container:delete") - @DELETE - @Path("/containers/{id}") - void removeContainer(@PathParam("id") String containerId, RemoveContainerOptions options); - - /** - * Start a container by id. - * - * @param containerId The id of the container to be started. - */ - @Named("container:start") - @POST - @Path("/containers/{id}/start") - void startContainer(@PathParam("id") String containerId); - - /** - * Start a container. - * - * @param containerId The id of the container to be started. - * @param hostConfig the containerâs host configuration - */ - @Named("container:start") - @POST - @Path("/containers/{id}/start") - void startContainer(@PathParam("id") String containerId, @BinderParam(BindToJsonPayload.class) HostConfig hostConfig); - - /** - * Stop a container by id. - * - * @param containerId The id of the container to be stopped. - * @return the stream of the stop execution. - */ - @Named("container:stop") - @POST - @Path("/containers/{id}/stop") - void stopContainer(@PathParam("id") String containerId); - - /** - * Create a new image from a containerâs changes - * - * @param options the commitâs configuration (@see CommitOptions) - * @return a new image created from the current container's status. - */ - @Named("container:commit") - @POST - @Path("/commit") - Image commit(CommitOptions options); - - /** - * List images - * - * @return the images available. - */ - @Named("images:list") - @GET - @Path("/images/json") - @Fallback(Fallbacks.EmptySetOnNotFoundOr404.class) - Set<Image> listImages(); - - /** - * List images - * - * @param options the configuration to list images (@see ListImageOptions) - * @return the images available. - */ - @Named("images:list") - @GET - @Path("/images/json") - @Fallback(Fallbacks.EmptySetOnNotFoundOr404.class) - Set<Image> listImages(ListImageOptions options); - - /** - * Inspect an image - * - * @param imageName The id of the image to inspect. - * @return low-level information on the image name - */ - @Named("image:inspect") - @GET - @Path("/images/{name}/json") - Image inspectImage(@PathParam("name") String imageName); - - /** - * Create an image, either by pull it from the registry or by importing it - * - * @param options the configuration to create an image (@see CreateImageOptions) - * @return a stream of the image creation. - */ - @Named("image:create") - @POST - @Path("/images/create") - InputStream createImage(CreateImageOptions options); - - /** - * Delete an image. - * - * @param name the image name to be deleted - * @return the stream of the deletion execution. - */ - @Named("image:delete") - @DELETE - @Path("/images/{name}") - InputStream deleteImage(@PathParam("name") String name); - - /** - * Remove the image from the filesystem by name - * - * @param name the name of the image to be removed - * @param options the image deletion's options (@see DeleteImageOptions) - * @return the stream of the deletion execution. - */ - @Named("image:delete") - @DELETE - @Path("/images/{name}") - InputStream deleteImage(@PathParam("name") String name, DeleteImageOptions options); - - /** - * Build an image from Dockerfile via stdin - * - * @param inputStream The stream must be a tar archive compressed with one of the following algorithms: identity - * (no compression), gzip, bzip2, xz. - * @param options the image build's options (@see BuildOptions) - * @return a stream of the build execution - */ - @Named("image:build") - @POST - @Path("/build") - @Headers(keys = "Content-Type", values = "application/tar") - InputStream build(Payload inputStream, BuildOptions options); - - /** - * Build an image from Dockerfile via stdin - * - * @param dockerFile The file to be compressed with one of the following algorithms: identity, gzip, bzip2, xz.* - * @param options the image build's options (@see BuildOptions) - * @return a stream of the build execution - */ - @Named("image:build") - @POST - @Path("/build") - @Headers(keys = "Content-Type", values = "application/tar") - InputStream build(@BinderParam(BindInputStreamToRequest.class) File dockerFile, BuildOptions options); - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/internal/Archives.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/internal/Archives.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/internal/Archives.java deleted file mode 100644 index 43b69c3..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/features/internal/Archives.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.features.internal; - -import static com.google.common.base.Preconditions.checkArgument; -import static com.google.common.collect.Iterables.getLast; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; - -import org.apache.commons.compress.archivers.tar.TarArchiveEntry; -import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream; - -import com.google.common.base.Splitter; -import com.google.common.io.Files; - -public class Archives { - - public static File tar(File baseDir, String archivePath) throws IOException { - return tar(baseDir, new File(archivePath)); - } - - public static File tar(File baseDir, File tarFile) throws IOException { - // Check that the directory is a directory, and get its contents - checkArgument(baseDir.isDirectory(), "%s is not a directory", baseDir); - File[] files = baseDir.listFiles(); - String token = getLast(Splitter.on("/").split(baseDir.getAbsolutePath())); - TarArchiveOutputStream tos = new TarArchiveOutputStream(new FileOutputStream(tarFile)); - tos.setLongFileMode(TarArchiveOutputStream.LONGFILE_GNU); - try { - for (File file : files) { - TarArchiveEntry tarEntry = new TarArchiveEntry(file); - tarEntry.setName("/" + getLast(Splitter.on(token).split(file.toString()))); - tos.putArchiveEntry(tarEntry); - if (!file.isDirectory()) { - Files.asByteSource(file).copyTo(tos); - } - tos.closeArchiveEntry(); - } - } finally { - tos.close(); - } - return tarFile; - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/handlers/DockerErrorHandler.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/handlers/DockerErrorHandler.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/handlers/DockerErrorHandler.java deleted file mode 100644 index 72d3069..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/handlers/DockerErrorHandler.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.handlers; - -import java.io.IOException; - -import javax.annotation.Resource; - -import org.jclouds.http.HttpCommand; -import org.jclouds.http.HttpErrorHandler; -import org.jclouds.http.HttpResponse; -import org.jclouds.http.HttpResponseException; -import org.jclouds.logging.Logger; -import org.jclouds.rest.AuthorizationException; -import org.jclouds.rest.ResourceNotFoundException; -import org.jclouds.util.Strings2; - -import com.google.common.base.Throwables; -import com.google.common.io.Closeables; - -/** - * This will parse and set an appropriate exception on the command object. - * <p/> - * <p/> - * Errors are returned with an appropriate HTTP status code, an X-Elastic- Error header specifying - * the error type, and a text description in the HTTP body. - */ -public class DockerErrorHandler implements HttpErrorHandler { - @Resource - protected Logger logger = Logger.NULL; - - public void handleError(HttpCommand command, HttpResponse response) { - // it is important to always read fully and close streams - String message = parseMessage(response); - Exception exception = message != null ? new HttpResponseException(command, response, message) - : new HttpResponseException(command, response); - try { - message = message != null ? message : String.format("%s -> %s", command.getCurrentRequest().getRequestLine(), - response.getStatusLine()); - switch (response.getStatusCode()) { - case 400: - if ((command.getCurrentRequest().getEndpoint().getPath().endsWith("/info")) - || (message != null && message.indexOf("could not be found") != -1)) - exception = new ResourceNotFoundException(message, exception); - else if (message != null && message.indexOf("currently in use") != -1) - exception = new IllegalStateException(message, exception); - else - exception = new IllegalArgumentException(message, exception); - break; - case 401: - exception = new AuthorizationException(message, exception); - break; - case 402: - exception = new IllegalStateException(message, exception); - break; - case 404: - if (!command.getCurrentRequest().getMethod().equals("DELETE")) { - exception = new ResourceNotFoundException(message, exception); - } - break; - case 405: - exception = new IllegalArgumentException(message, exception); - break; - case 409: - exception = new IllegalStateException(message, exception); - break; - } - } finally { - try { - Closeables.close(response.getPayload(), true); - } catch (IOException e) { - // This code will never be reached - throw Throwables.propagate(e); - } - command.setException(exception); - } - } - - public String parseMessage(HttpResponse response) { - if (response.getPayload() == null) - return null; - try { - return Strings2.toStringAndClose(response.getPayload().openStream()); - } catch (IOException e) { - throw Throwables.propagate(e); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/BuildOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/BuildOptions.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/BuildOptions.java deleted file mode 100644 index 4d7196c..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/BuildOptions.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.options; - -import org.jclouds.http.options.BaseHttpRequestOptions; - -/** - * Options to customize image builder. - */ -public class BuildOptions extends BaseHttpRequestOptions { - - public static final BuildOptions NONE = new BuildOptions(); - - public BuildOptions tag(String tag) { - this.queryParameters.put("tag", tag); - return this; - } - - public BuildOptions verbose(Boolean verbose) { - this.queryParameters.put("verbose", verbose.toString()); - return this; - } - - public BuildOptions nocache(Boolean nocache) { - this.queryParameters.put("nocache", nocache.toString()); - return this; - } - - public static class Builder { - - /** - * @see BuildOptions#tag - */ - public static BuildOptions tag(String tag) { - BuildOptions options = new BuildOptions(); - return options.tag(tag); - } - - /** - * @see BuildOptions#verbose(Boolean) - */ - public static BuildOptions verbose(Boolean verbose) { - BuildOptions options = new BuildOptions(); - return options.verbose(verbose); - } - - /** - * @see BuildOptions#nocache(Boolean) - */ - public static BuildOptions nocache(Boolean nocache) { - BuildOptions options = new BuildOptions(); - return options.nocache(nocache); - } - - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CommitOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CommitOptions.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CommitOptions.java deleted file mode 100644 index 5653fba..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CommitOptions.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.options; - -import org.jclouds.http.options.BaseHttpRequestOptions; - -/** - * Options to customize image commit. - */ -public class CommitOptions extends BaseHttpRequestOptions { - - public static final CommitOptions NONE = new CommitOptions(); - - public CommitOptions containerId(String containerId) { - this.queryParameters.put("containerId", containerId); - return this; - } - - public CommitOptions repository(String repository) { - this.queryParameters.put("repository", repository); - return this; - } - - public CommitOptions tag(String tag) { - this.queryParameters.put("tag", tag); - return this; - } - - public CommitOptions message(String message) { - this.queryParameters.put("message", message); - return this; - } - - public CommitOptions author(String author) { - this.queryParameters.put("author", author); - return this; - } - - public CommitOptions run(String run) { - this.queryParameters.put("run", run); - return this; - } - - public static class Builder { - - /** - * @see CommitOptions#containerId - */ - public static CommitOptions containerId(String containerId) { - CommitOptions options = new CommitOptions(); - return options.containerId(containerId); - } - - /** - * @see CommitOptions#repository - */ - public static CommitOptions repository(String repository) { - CommitOptions options = new CommitOptions(); - return options.repository(repository); - } - - /** - * @see CommitOptions#tag - */ - public static CommitOptions tag(String tag) { - CommitOptions options = new CommitOptions(); - return options.tag(tag); - } - - /** - * @see CommitOptions#message - */ - public static CommitOptions message(String message) { - CommitOptions options = new CommitOptions(); - return options.message(message); - } - - /** - * @see CommitOptions#author - */ - public static CommitOptions author(String author) { - CommitOptions options = new CommitOptions(); - return options.author(author); - } - - /** - * @see CommitOptions#run - */ - public static CommitOptions run(String run) { - CommitOptions options = new CommitOptions(); - return options.run(run); - } - - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CreateImageOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CreateImageOptions.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CreateImageOptions.java deleted file mode 100644 index 51dc399..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/CreateImageOptions.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.options; - -import org.jclouds.http.options.BaseHttpRequestOptions; - -/** - * Options to customize container creation. - */ -public class CreateImageOptions extends BaseHttpRequestOptions { - - public static final CreateImageOptions NONE = new CreateImageOptions(); - - public CreateImageOptions fromImage(String fromImage) { - this.queryParameters.put("fromImage", fromImage); - return this; - } - - public CreateImageOptions fromSrc(String fromSrc) { - this.queryParameters.put("fromSrc", fromSrc); - return this; - } - - public CreateImageOptions repo(String repo) { - this.queryParameters.put("repo", repo); - return this; - } - - public CreateImageOptions tag(String tag) { - this.queryParameters.put("tag", tag); - return this; - } - - public CreateImageOptions registry(String registry) { - this.queryParameters.put("registry", registry); - return this; - } - - public static class Builder { - /** - * @see CreateImageOptions#fromImage - */ - public static CreateImageOptions fromImage(String fromImage) { - CreateImageOptions options = new CreateImageOptions(); - return options.fromImage(fromImage); - } - - /** - * @see CreateImageOptions#fromSrc - */ - public static CreateImageOptions fromSrc(String fromSrc) { - CreateImageOptions options = new CreateImageOptions(); - return options.fromSrc(fromSrc); - } - - /** - * @see CreateImageOptions#repo - */ - public static CreateImageOptions repo(String repo) { - CreateImageOptions options = new CreateImageOptions(); - return options.repo(repo); - } - - /** - * @see CreateImageOptions#tag - */ - public static CreateImageOptions tag(String tag) { - CreateImageOptions options = new CreateImageOptions(); - return options.tag(tag); - } - - /** - * @see CreateImageOptions#registry - */ - public static CreateImageOptions registry(String registry) { - CreateImageOptions options = new CreateImageOptions(); - return options.registry(registry); - } - - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/4e042bca/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/DeleteImageOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/DeleteImageOptions.java b/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/DeleteImageOptions.java deleted file mode 100644 index 9438616..0000000 --- a/dependencies/jclouds/apis/docker/1.8.0-stratos/src/main/java/org/jclouds/docker/options/DeleteImageOptions.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.docker.options; - -import org.jclouds.http.options.BaseHttpRequestOptions; - -/** - * Options to customize image deletion. - */ -public class DeleteImageOptions extends BaseHttpRequestOptions { - - public static final DeleteImageOptions NONE = new DeleteImageOptions(); - - public DeleteImageOptions force(Boolean force) { - this.queryParameters.put("force", force.toString()); - return this; - } - - public static class Builder { - - /** - * @see DeleteImageOptions#force - */ - public static DeleteImageOptions force(Boolean force) { - DeleteImageOptions options = new DeleteImageOptions(); - return options.force(force); - } - } - -}
