diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerAllowedArguments.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerAllowedArguments.java
index 60b68336d1..ffe53dc50e 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerAllowedArguments.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerAllowedArguments.java
@@ -20,13 +20,11 @@ package org.jclouds.glesys.domain;
import static com.google.common.base.Preconditions.checkNotNull;
-import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.google.common.base.Joiner;
import com.google.common.base.Objects;
-import com.google.common.collect.Iterables;
import com.google.gson.annotations.SerializedName;
/**
@@ -36,175 +34,198 @@ import com.google.gson.annotations.SerializedName;
* @see
*/
public class ServerAllowedArguments {
- public static Builder builder() {
- return new Builder();
- }
+ public static Builder builder() {
+ return new Builder();
+ }
- public static class Builder {
- private List diskSizes;
- private List memorySizes;
- private List cpuCores;
- private List templates;
- private List transfers;
- private List dataCenters;
+ public static class Builder {
+ private List diskSizes;
+ private List memorySizes;
+ private List cpuCores;
+ private List templates;
+ private List transfers;
+ private List dataCenters;
- public Builder diskSizes(Integer... sizes) {
- return diskSizes(Arrays.asList(sizes));
- }
+ public Builder diskSizes(Integer... sizes) {
+ return diskSizes(Arrays.asList(sizes));
+ }
- public Builder diskSizes(List sizes) {
- this.diskSizes = sizes;
- return this;
- }
+ public Builder diskSizes(List sizes) {
+ this.diskSizes = sizes;
+ return this;
+ }
- public Builder memorySizes(Integer... sizes) {
- return memorySizes(Arrays.asList(sizes));
- }
+ public Builder memorySizes(Integer... sizes) {
+ return memorySizes(Arrays.asList(sizes));
+ }
- public Builder memorySizes(List sizes) {
- this.memorySizes = sizes;
- return this;
- }
+ public Builder memorySizes(List sizes) {
+ this.memorySizes = sizes;
+ return this;
+ }
- public Builder cpuCores(Integer... cpuCores) {
- this.cpuCores = Arrays.asList(cpuCores);
- return this;
- }
+ public Builder cpuCores(Integer... cpuCores) {
+ this.cpuCores = Arrays.asList(cpuCores);
+ return this;
+ }
- public Builder cpuCores(List cpuCores) {
- this.cpuCores = cpuCores;
- return this;
- }
+ public Builder cpuCores(List cpuCores) {
+ this.cpuCores = cpuCores;
+ return this;
+ }
- public Builder templates(String... templates) {
- return templates(Arrays.asList(templates));
- }
+ public Builder templates(String... templates) {
+ return templates(Arrays.asList(templates));
+ }
- public Builder templates(List templates) {
- this.templates = templates;
- return this;
- }
+ public Builder templates(List templates) {
+ this.templates = templates;
+ return this;
+ }
- public Builder transfers(Integer... transfers) {
- return transfers(Arrays.asList(transfers));
- }
+ public Builder transfers(Integer... transfers) {
+ return transfers(Arrays.asList(transfers));
+ }
- public Builder transfers(List transfers) {
- this.transfers = transfers;
- return this;
- }
+ public Builder transfers(List transfers) {
+ this.transfers = transfers;
+ return this;
+ }
- public Builder dataCenters(String... dataCenters) {
- return dataCenters(Arrays.asList(dataCenters));
- }
+ public Builder dataCenters(String... dataCenters) {
+ return dataCenters(Arrays.asList(dataCenters));
+ }
- public Builder dataCenters(List dataCenters) {
- this.dataCenters = dataCenters;
- return this;
- }
+ public Builder dataCenters(List dataCenters) {
+ this.dataCenters = dataCenters;
+ return this;
+ }
- public ServerAllowedArguments build() {
- return new ServerAllowedArguments(diskSizes, memorySizes, cpuCores, templates, transfers, dataCenters);
- }
+ public ServerAllowedArguments build() {
+ return new ServerAllowedArguments(diskSizes, memorySizes, cpuCores, templates, transfers, dataCenters);
+ }
- public Builder fromAllowedArguments(ServerAllowedArguments in) {
- return diskSizes(in.getDiskSizes())
- .memorySizes(in.getMemorySizes())
- .cpuCores(in.getCpuCores())
- .templates(in.getTemplates())
- .transfers(in.getTransfers())
- .dataCenters(in.getDataCenters());
- }
- }
+ public Builder fromAllowedArguments(ServerAllowedArguments in) {
+ return diskSizes(in.getDiskSizes())
+ .memorySizes(in.getMemorySizes())
+ .cpuCores(in.getCpuCores())
+ .templates(in.getTemplates())
+ .transfers(in.getTransfers())
+ .dataCenters(in.getDataCenters());
+ }
+ }
- @SerializedName("disksize")
- private final List diskSizes;
- @SerializedName("memorysize")
- private final List memorySizes;
- @SerializedName("cpucores")
- private final List cpuCores;
- @SerializedName("template")
- private final List templates;
- @SerializedName("transfer")
- private final List transfers;
- @SerializedName("datacenter")
- private final List dataCenters;
+ @SerializedName("disksize")
+ private final List diskSizes;
+ @SerializedName("memorysize")
+ private final List memorySizes;
+ @SerializedName("cpucores")
+ private final List cpuCores;
+ @SerializedName("template")
+ private final List templates;
+ @SerializedName("transfer")
+ private final List transfers;
+ @SerializedName("datacenter")
+ private final List dataCenters;
- public ServerAllowedArguments(List diskSizes, List memorySizes, List cpuCores,
- List templates, List transfers, List dataCenters) {
- checkNotNull(diskSizes, "diskSizes");
- checkNotNull(memorySizes, "memorySizes");
- checkNotNull(cpuCores, "cpuCores");
- checkNotNull(templates, "templates");
- checkNotNull(transfers, "transfers");
- checkNotNull(dataCenters, "dataCenters");
+ public ServerAllowedArguments(List diskSizes, List memorySizes, List cpuCores,
+ List templates, List transfers, List dataCenters) {
+ checkNotNull(diskSizes, "diskSizes");
+ checkNotNull(memorySizes, "memorySizes");
+ checkNotNull(cpuCores, "cpuCores");
+ checkNotNull(templates, "templates");
+ checkNotNull(transfers, "transfers");
+ checkNotNull(dataCenters, "dataCenters");
- this.diskSizes = diskSizes;
- this.memorySizes = memorySizes;
- this.cpuCores = cpuCores;
- this.templates = templates;
- this.transfers = transfers;
- this.dataCenters = dataCenters;
- }
+ this.diskSizes = diskSizes;
+ this.memorySizes = memorySizes;
+ this.cpuCores = cpuCores;
+ this.templates = templates;
+ this.transfers = transfers;
+ this.dataCenters = dataCenters;
+ }
- public List getDiskSizes() {
- return diskSizes;
- }
+ /**
+ * @return a list of disk sizes, in GB, that can be used for creating servers on this platform
+ * @see org.jclouds.glesys.domain.ServerTemplate#getMinDiskSize()
+ */
+ public List getDiskSizes() {
+ return diskSizes;
+ }
- public List getMemorySizes() {
- return memorySizes;
- }
+ /**
+ * @return a list of memory sizes, in MB, that can be used for creating servers on this platform
+ * @see org.jclouds.glesys.domain.ServerTemplate#getMinMemSize()
+ */
+ public List getMemorySizes() {
+ return memorySizes;
+ }
- public List getCpuCores() {
- return cpuCores;
- }
+ /**
+ * @return a list of which core counts can be used for creating servers on this platform
+ */
+ public List getCpuCores() {
+ return cpuCores;
+ }
- public List getTemplates() {
- return templates;
- }
+ /**
+ * @return a list of template names available for creating servers on this platform
+ * @see org.jclouds.glesys.domain.ServerTemplate#getName()
+ */
+ public List getTemplates() {
+ return templates;
+ }
- public List getTransfers() {
- return transfers;
- }
+ /**
+ * @return the list of transfer settings available for creating servers on this platform
+ */
+ public List getTransfers() {
+ return transfers;
+ }
- public List getDataCenters() {
- return dataCenters;
- }
+ /**
+ * @return the list of datacenters available that support creating servers on this platform
+ */
+ public List getDataCenters() {
+ return dataCenters;
+ }
- @Override
- public boolean equals(Object object) {
- if (this == object) {
- return true;
- }
- if (object instanceof ServerAllowedArguments) {
- final ServerAllowedArguments other = (ServerAllowedArguments) object;
- return Objects.equal(diskSizes, other.diskSizes)
- && Objects.equal(memorySizes, other.memorySizes)
- && Objects.equal(cpuCores, other.cpuCores)
- && Objects.equal(templates, other.templates)
- && Objects.equal(transfers, other.transfers)
- && Objects.equal(dataCenters, other.dataCenters);
- } else {
- return false;
- }
- }
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
+ return true;
+ }
+ if (object instanceof ServerAllowedArguments) {
+ final ServerAllowedArguments other = (ServerAllowedArguments) object;
+ return Objects.equal(diskSizes, other.diskSizes)
+ && Objects.equal(memorySizes, other.memorySizes)
+ && Objects.equal(cpuCores, other.cpuCores)
+ && Objects.equal(templates, other.templates)
+ && Objects.equal(transfers, other.transfers)
+ && Objects.equal(dataCenters, other.dataCenters);
+ } else {
+ return false;
+ }
+ }
- @Override
- public int hashCode() {
- return Objects.hashCode(diskSizes, memorySizes, cpuCores, templates, transfers, dataCenters);
- }
+ @Override
+ public int hashCode() {
+ return Objects.hashCode(diskSizes, memorySizes, cpuCores, templates, transfers, dataCenters);
+ }
- @Override
- public String toString() {
- checkNotNull(diskSizes, "diskSizes");
- checkNotNull(memorySizes, "memorySizes");
- checkNotNull(cpuCores, "cpuCores");
- checkNotNull(templates, "templates");
- checkNotNull(transfers, "transfers");
- checkNotNull(dataCenters, "dataCenters");
+ @Override
+ public String toString() {
+ checkNotNull(diskSizes, "diskSizes");
+ checkNotNull(memorySizes, "memorySizes");
+ checkNotNull(cpuCores, "cpuCores");
+ checkNotNull(templates, "templates");
+ checkNotNull(transfers, "transfers");
+ checkNotNull(dataCenters, "dataCenters");
- Joiner commaJoiner = Joiner.on(", ");
- return String.format("[disksize=[%s], memorysize=[%s], cpuCores=[%s], templates=[%s], transfers=[%s], datacenters=[%s]]", commaJoiner.join(diskSizes), commaJoiner.join(memorySizes), commaJoiner.join(cpuCores), commaJoiner.join(templates), commaJoiner.join(transfers), commaJoiner.join(dataCenters));
- }
+ Joiner commaJoiner = Joiner.on(", ");
+ return String.format("[disksize=[%s], memorysize=[%s], cpuCores=[%s], templates=[%s], transfers=[%s], datacenters=[%s]]",
+ commaJoiner.join(diskSizes), commaJoiner.join(memorySizes), commaJoiner.join(cpuCores), commaJoiner.join(templates),
+ commaJoiner.join(transfers), commaJoiner.join(dataCenters));
+ }
}
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerConsole.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerConsole.java
index 66357399d6..2337de5054 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerConsole.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerConsole.java
@@ -4,12 +4,45 @@ import com.google.common.base.Objects;
/**
* Connection information to connect to a server with VNC.
- *
+ *
* @author Adam Lowe
* @see
*/
public class ServerConsole {
-
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private String host;
+ private int port;
+ private String password;
+
+ public Builder host(String host) {
+ this.host = host;
+ return this;
+ }
+
+ public Builder port(int port) {
+ this.port = port;
+ return this;
+ }
+
+ public Builder password(String password) {
+ this.password = password;
+ return this;
+ }
+
+ public ServerConsole build() {
+ return new ServerConsole(host, port, password);
+ }
+
+ public Builder fromServerConsole(ServerConsole in) {
+ return host(in.getHost()).port(in.getPort()).password(in.getPassword());
+ }
+
+ }
+
private final String host;
private final int port;
private final String password;
@@ -20,19 +53,27 @@ public class ServerConsole {
this.password = password;
}
+ /**
+ * @return the host name to use to connect to the server
+ */
public String getHost() {
return host;
}
+ /**
+ * @return the port to use to connect to the server
+ */
public int getPort() {
return port;
}
+ /**
+ * @return the password to use to connect to the server
+ */
public String getPassword() {
return password;
}
-
@Override
public boolean equals(Object object) {
if (this == object) {
@@ -52,7 +93,7 @@ public class ServerConsole {
public int hashCode() {
return Objects.hashCode(host, port, password);
}
-
+
@Override
public String toString() {
return String.format("[host=%s, port=%s, password=%s]", host, port, password);
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerCreatedIp.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerCreatedIp.java
index 2da6c4235f..f8c210185b 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerCreatedIp.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerCreatedIp.java
@@ -22,7 +22,10 @@ package org.jclouds.glesys.domain;
import com.google.common.base.Objects;
/**
- * Represents detailed information about an available IP ip.
+ * Represents detailed information about an available ip address of a new server.
+ *
+ * @author Adam Lowe
+ * @see ServerCreated
*/
public class ServerCreatedIp {
@@ -49,11 +52,11 @@ public class ServerCreatedIp {
this.cost = cost;
return this;
}
-
+
public ServerCreatedIp build() {
return new ServerCreatedIp(ip, version, cost);
}
-
+
public Builder fromIpCreated(ServerCreatedIp from) {
return ip(from.getIp()).version(from.getVersion()).cost(from.getCost());
}
@@ -62,25 +65,34 @@ public class ServerCreatedIp {
protected final String ip;
protected final int version;
protected final double cost;
-
+
public ServerCreatedIp(String ip, int version, double cost) {
this.ip = ip;
this.version = version;
this.cost = cost;
}
+ /**
+ * @return the IP version, ex. 4
+ */
public int getVersion() {
return version;
}
+ /**
+ * @return the ip address of the new server
+ */
public String getIp() {
return ip;
}
+ /**
+ * @return the cost of the ip address allocated to the new server
+ */
public double getCost() {
return cost;
}
-
+
@Override
public boolean equals(Object object) {
if (this == object) {
@@ -91,7 +103,7 @@ public class ServerCreatedIp {
return Objects.equal(ip, other.ip)
&& Objects.equal(version, other.version)
&& Objects.equal(cost, other.cost);
- } else {
+ } else {
return false;
}
}
@@ -104,6 +116,6 @@ public class ServerCreatedIp {
@Override
public String toString() {
return String.format("[ip=%s, version=%d, cost=%f]",
- ip, version, cost);
+ ip, version, cost);
}
}
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerState.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerState.java
index b5540f5312..b30a48d000 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerState.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerState.java
@@ -23,6 +23,8 @@ import com.google.common.base.CaseFormat;
import static com.google.common.base.Preconditions.checkNotNull;
/**
+ * Valid states for a server hosted in a Glesys cloud
+ *
* @author Adam Lowe
* @see ServerStatus
*/
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/Template.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerTemplate.java
similarity index 74%
rename from sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/Template.java
rename to sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerTemplate.java
index a7b9d60fbd..7d5ccf3dfc 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/Template.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerTemplate.java
@@ -4,11 +4,12 @@ import com.google.common.base.Objects;
import com.google.gson.annotations.SerializedName;
/**
+ * Operating system template
+ *
* @author Adam Lowe
- * @see
+ * @see
*/
-public class Template {
-
+public class ServerTemplate {
public static Builder builder() {
return new Builder();
@@ -45,12 +46,12 @@ public class Template {
this.platform = platform;
return this;
}
-
- public Template build() {
- return new Template(name, minDiskSize, minMemSize, os, platform);
+
+ public ServerTemplate build() {
+ return new ServerTemplate(name, minDiskSize, minMemSize, os, platform);
}
-
- public Builder fromTemplate(Template in) {
+
+ public Builder fromTemplate(ServerTemplate in) {
return name(in.getName()).minDiskSize(in.getMinDiskSize()).minMemSize(in.getMinMemSize()).os(in.getOs()).platform(in.getPlatform());
}
@@ -64,7 +65,7 @@ public class Template {
private final String os;
private final String platform;
- public Template(String name, int minDiskSize, int minMemSize, String os, String platform) {
+ public ServerTemplate(String name, int minDiskSize, int minMemSize, String os, String platform) {
this.name = name;
this.minDiskSize = minDiskSize;
this.minMemSize = minMemSize;
@@ -76,18 +77,32 @@ public class Template {
return name;
}
+ /**
+ * @return the minimum allowed disk size in GB
+ * @see org.jclouds.glesys.domain.ServerAllowedArguments#getDiskSizes()
+ */
public int getMinDiskSize() {
return minDiskSize;
}
+ /**
+ * @return the minimum allowed memory size in MB
+ * @see org.jclouds.glesys.domain.ServerAllowedArguments#getMemorySizes()
+ */
public int getMinMemSize() {
return minMemSize;
}
+ /**
+ * @return the name of the operating system type ex. "linux"
+ */
public String getOs() {
return os;
}
+ /**
+ * @return the name of the platform this template is available in, ex. "Xen"
+ */
public String getPlatform() {
return platform;
}
@@ -97,8 +112,8 @@ public class Template {
if (this == object) {
return true;
}
- if (object instanceof Template) {
- final Template other = (Template) object;
+ if (object instanceof ServerTemplate) {
+ final ServerTemplate other = (ServerTemplate) object;
return Objects.equal(name, other.name)
&& Objects.equal(minDiskSize, other.minDiskSize)
&& Objects.equal(minMemSize, other.minMemSize)
@@ -108,12 +123,12 @@ public class Template {
return false;
}
}
-
+
@Override
public int hashCode() {
return Objects.hashCode(name, minDiskSize, minMemSize, os, platform);
}
-
+
@Override
public String toString() {
return String.format("[name=%s, min_disk_size=%d, min_mem_size=%d, os=%s, platform=%s]",
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerUptime.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerUptime.java
index 8f5273a836..24ab2a9792 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerUptime.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/domain/ServerUptime.java
@@ -28,13 +28,16 @@ import java.util.List;
import java.util.concurrent.TimeUnit;
/**
+ * Represents an 'uptime' duration of server in a Glesys cloud
+ *
* @author Adam Lowe
+ * @see ServerStatus
*/
public class ServerUptime {
private final long time;
private final String timeString;
- public ServerUptime(long time) {
+ private ServerUptime(long time) {
this.time = time;
long days = TimeUnit.SECONDS.toDays(time);
long hours = TimeUnit.SECONDS.toHours(time - TimeUnit.DAYS.toSeconds(days));
@@ -65,14 +68,14 @@ public class ServerUptime {
}
/**
- * @param uptimeString a Glesys uptime string
+ * @param uptimeString a Glesys uptime string, ex. "0 0 0 0 0 10 1 1"
*/
public static ServerUptime fromValue(String uptimeString) {
return new ServerUptime(uptimeString);
}
/**
- * @param time number of seconds
+ * @param time number of seconds the server has been up
*/
public static ServerUptime fromValue(long time) {
return new ServerUptime(time);
@@ -88,12 +91,12 @@ public class ServerUptime {
return true;
}
return object instanceof ServerUptime
- && time == ((ServerUptime) object).time;
+ && Objects.equal(time, ((ServerUptime) object).getTime());
}
@Override
public int hashCode() {
- return 37 * (int) time;
+ return Objects.hashCode(time);
}
@Override
@@ -101,5 +104,4 @@ public class ServerUptime {
return timeString;
}
-
}
\ No newline at end of file
diff --git a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/features/ServerAsyncClient.java b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/features/ServerAsyncClient.java
index 8cbb286da2..30400e60f7 100644
--- a/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/features/ServerAsyncClient.java
+++ b/sandbox-providers/glesys/src/main/java/org/jclouds/glesys/features/ServerAsyncClient.java
@@ -36,6 +36,7 @@ import java.util.*;
*
*
* @author Adrian Cole
+ * @author Adam Lowe
* @see ServerClient
* @see
*/
@@ -110,7 +111,7 @@ public interface ServerAsyncClient {
@Path("/server/templates/format/json")
@SelectJson("templates")
@Consumes(MediaType.APPLICATION_JSON)
- ListenableFuture