First set of api's for opsource

This commit is contained in:
Kedar Dave 2012-03-29 10:46:37 -05:00 committed by Adrian Cole
parent 39c79f6ffa
commit e3e90c0b9c
32 changed files with 3561 additions and 1 deletions

View File

@ -25,4 +25,6 @@ package org.jclouds.opsource.servers;
*/ */
public interface OpSourceNameSpaces { public interface OpSourceNameSpaces {
public static final String DIRECTORY = "http://oec.api.opsource.net/schemas/directory"; public static final String DIRECTORY = "http://oec.api.opsource.net/schemas/directory";
public static final String DATACENTER = "http://oec.api.opsource.net/schemas/datacenter";
public static final String SERVER = "http://oec.api.opsource.net/schemas/server";
} }

View File

@ -18,7 +18,11 @@
*/ */
package org.jclouds.opsource.servers; package org.jclouds.opsource.servers;
import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.ServerImage;
import org.jclouds.opsource.servers.features.AccountAsyncClient; import org.jclouds.opsource.servers.features.AccountAsyncClient;
import org.jclouds.opsource.servers.features.ServerAsyncClient;
import org.jclouds.opsource.servers.features.ServerImageAsyncClient;
import org.jclouds.rest.annotations.Delegate; import org.jclouds.rest.annotations.Delegate;
/** /**
@ -35,4 +39,16 @@ public interface OpSourceServersAsyncClient {
@Delegate @Delegate
AccountAsyncClient getAccountClient(); AccountAsyncClient getAccountClient();
/**
* @return asynchronous access to {@link ServerImage} features
*/
@Delegate
ServerImageAsyncClient getServerImageClient();
/**
* @return asynchronous access to server features
*/
@Delegate
ServerAsyncClient getServerClient();
} }

View File

@ -21,7 +21,11 @@ package org.jclouds.opsource.servers;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import org.jclouds.concurrent.Timeout; import org.jclouds.concurrent.Timeout;
import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.ServerImage;
import org.jclouds.opsource.servers.features.AccountClient; import org.jclouds.opsource.servers.features.AccountClient;
import org.jclouds.opsource.servers.features.ServerClient;
import org.jclouds.opsource.servers.features.ServerImageClient;
import org.jclouds.rest.annotations.Delegate; import org.jclouds.rest.annotations.Delegate;
/** /**
@ -39,4 +43,16 @@ public interface OpSourceServersClient {
@Delegate @Delegate
AccountClient getAccountClient(); AccountClient getAccountClient();
/**
* @return synchronous access to {@link ServerImage} features
*/
@Delegate
ServerImageClient getServerImageClient();
/**
* @return synchronous access to server features
*/
@Delegate
ServerClient getServerClient();
} }

View File

@ -30,6 +30,10 @@ import org.jclouds.opsource.servers.OpSourceServersAsyncClient;
import org.jclouds.opsource.servers.OpSourceServersClient; import org.jclouds.opsource.servers.OpSourceServersClient;
import org.jclouds.opsource.servers.features.AccountAsyncClient; import org.jclouds.opsource.servers.features.AccountAsyncClient;
import org.jclouds.opsource.servers.features.AccountClient; import org.jclouds.opsource.servers.features.AccountClient;
import org.jclouds.opsource.servers.features.ServerAsyncClient;
import org.jclouds.opsource.servers.features.ServerClient;
import org.jclouds.opsource.servers.features.ServerImageAsyncClient;
import org.jclouds.opsource.servers.features.ServerImageClient;
import org.jclouds.opsource.servers.handlers.OpSourceServersErrorHandler; import org.jclouds.opsource.servers.handlers.OpSourceServersErrorHandler;
import org.jclouds.rest.ConfiguresRestClient; import org.jclouds.rest.ConfiguresRestClient;
import org.jclouds.rest.config.RestClientModule; import org.jclouds.rest.config.RestClientModule;
@ -48,7 +52,10 @@ public class OpSourceServersRestClientModule extends
RestClientModule<OpSourceServersClient, OpSourceServersAsyncClient> { RestClientModule<OpSourceServersClient, OpSourceServersAsyncClient> {
public static final Map<Class<?>, Class<?>> DELEGATE_MAP = ImmutableMap.<Class<?>, Class<?>> builder()// public static final Map<Class<?>, Class<?>> DELEGATE_MAP = ImmutableMap.<Class<?>, Class<?>> builder()//
.put(AccountClient.class, AccountAsyncClient.class).build(); .put(AccountClient.class, AccountAsyncClient.class)
.put(ServerImageClient.class, ServerImageAsyncClient.class)
.put(ServerClient.class, ServerAsyncClient.class)
.build();
public OpSourceServersRestClientModule() { public OpSourceServersRestClientModule() {
super(OpSourceServersClient.class, OpSourceServersAsyncClient.class, DELEGATE_MAP); super(OpSourceServersClient.class, OpSourceServersAsyncClient.class, DELEGATE_MAP);

View File

@ -0,0 +1,77 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import com.google.common.base.Objects;
/**
*
*
*/
public abstract class BaseServer {
protected BaseServer() {
// For JAXB and builder use
}
private String id;
private String name;
private String description;
protected BaseServer(String id, String name, String description) {
this.id = id;
this.name = name;
this.description = description;
}
public String getId() {
return id;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
BaseServer that = BaseServer.class.cast(o);
return equal(id, that.id);
}
@Override
public int hashCode() {
return Objects.hashCode(id, name, description);
}
@Override
public String toString() {
return Objects.toStringHelper("").toString();
}
}

View File

@ -0,0 +1,223 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.DATACENTER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = DATACENTER, name = "datacenterWithLimits")
public class DataCenter {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromDataCenter(this);
}
public static class Builder {
private String location;
private String displayName;
private String city;
private String state;
private String country;
private String vpnUrl;
private boolean isDefault;
private int maxCpu;
private long maxRamMb;
/**
* @see DataCenter#getOrgId()
*/
public Builder location(String location) {
this.location = location;
return this;
}
public Builder displayName(String displayName) {
this.displayName = displayName;
return this;
}
public Builder city(String city) {
this.city = city;
return this;
}
public Builder state(String state) {
this.state = state;
return this;
}
public Builder country(String country) {
this.country = country;
return this;
}
public Builder vpnUrl(String vpnUrl) {
this.vpnUrl = vpnUrl;
return this;
}
public Builder isDefault(boolean isDefault) {
this.isDefault = isDefault;
return this;
}
public Builder maxCpu(int maxCpu) {
this.maxCpu = maxCpu;
return this;
}
public Builder maxRamMb(long maxRamMb) {
this.maxRamMb = maxRamMb;
return this;
}
public DataCenter build() {
return new DataCenter(location, displayName, city, state, country, vpnUrl, isDefault, maxCpu, maxRamMb);
}
public Builder fromDataCenter(DataCenter in) {
return new Builder().location(location).displayName(displayName).city(city).state(state)
.country(country).vpnUrl(vpnUrl).isDefault(isDefault).maxCpu(maxCpu).maxRamMb(maxRamMb);
}
}
private DataCenter() {
// For JAXB and builder use
}
@XmlElement(namespace = DATACENTER, name="location")
private String location;
@XmlElement(namespace = DATACENTER, name="displayName")
private String displayName;
@XmlElement(namespace = DATACENTER, name="city")
private String city;
@XmlElement(namespace = DATACENTER, name="state")
private String state;
@XmlElement(namespace = DATACENTER, name="country")
private String country;
@XmlElement(namespace = DATACENTER, name="vpnUrl")
private String vpnUrl;
@XmlElement(namespace = DATACENTER, name="isDefault")
private boolean isDefault;
@XmlElement(namespace = DATACENTER, name="maxCpu")
private long maxCpu;
@XmlElement(namespace = DATACENTER, name="maxRamMb")
private long maxRamMb;
private DataCenter(String location, String displayName, String city, String state, String country,
String vpnUrl, boolean isDefault, long maxCpu, long maxRamMb) {
this.location = location;
this.displayName = displayName;
this.city = city;
this.state = state;
this.country = country;
this.vpnUrl = vpnUrl;
this.isDefault = isDefault;
this.maxCpu = maxCpu;
this.maxRamMb = maxRamMb;
}
public String getLocation() {
return location;
}
public String getDisplayName() {
return displayName;
}
public String getCity() {
return city;
}
public String getState() {
return state;
}
public String getCountry() {
return country;
}
/**
* VPN URL corresponding to this data center's location
* @return
*/
public String getVpnUrl() {
return vpnUrl;
}
public boolean isDefault() {
return isDefault;
}
/**
* defines the upper ceiling for the
* number of CPUs permitted respectively for Customer Servers deployed at this data
* center.
* @return
*/
public long getMaxCpu() {
return maxCpu;
}
/**
* defines the upper ceiling for the
* quantity of RAM permitted respectively for Customer Servers deployed at this data
* center.
* @return
*/
public long getMaxRamMb() {
return maxRamMb;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
DataCenter that = DataCenter.class.cast(o);
return equal(location, that.location);
}
@Override
public int hashCode() {
return Objects.hashCode(location);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("location", location).add("displayName", displayName).add("city", city).
add("state", state).add("country", country).add("vpnUrl", vpnUrl).add("isDefault", isDefault).
add("maxCpu", maxCpu).add("maxRamMb", maxRamMb).toString();
}
}

View File

@ -0,0 +1,103 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static com.google.common.base.Preconditions.checkNotNull;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.DATACENTER;
import java.util.Set;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
/**
* Represents list of data centers for an account
* @author Kedar Dave
*/
@XmlRootElement(namespace = DATACENTER, name = "DatacentersWithLimits")
public class DataCentersList {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder();
}
public static class Builder {
Set<DataCenter> dataCenters = Sets.newLinkedHashSet();;
public Builder dataCenters(Set<DataCenter> dataCenters) {
this.dataCenters = Sets.newLinkedHashSet(checkNotNull(dataCenters, "dataCenters"));
return this;
}
public Builder dataCenter(DataCenter dataCenter) {
this.dataCenters.add(checkNotNull(dataCenter, "dataCenter"));
return this;
}
public DataCentersList build() {
return new DataCentersList(dataCenters);
}
}
private DataCentersList() {
// For JAXB and builder use
}
@XmlElement(name = "datacenterWithLimits", namespace = DATACENTER)
private Set<DataCenter> dataCenters = Sets.newLinkedHashSet();
private DataCentersList(Set<DataCenter> dataCenters) {
this.dataCenters = ImmutableSet.copyOf(dataCenters);
}
public Set<DataCenter> getDataCenters() {
return dataCenters;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
DataCentersList that = DataCentersList.class.cast(o);
return super.equals(that) && equal(dataCenters, that.dataCenters);
}
@Override
public int hashCode() {
return Objects.hashCode(dataCenters);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("dataCenters", dataCenters).toString();
}
}

View File

@ -0,0 +1,227 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "DeployedServer")
public class DeployedServer extends BaseServer{
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromDeployedServer(this);
}
public static class Builder {
private String id;
private String name;
private String description;
private MachineSpecification machineSpecification;
private String sourceImageId;
private String networkId;
private String privateIpAddress;
private String publicIpAddress;
private String machineName;
private boolean isStarted;
private String deployedTime;
private Status status;
public Builder id(String id) {
this.id = id;
return this;
}
public Builder name(String name) {
this.name = name;
return this;
}
public Builder description(String description) {
this.description = description;
return this;
}
public Builder machineSpecification(MachineSpecification machineSpecification) {
this.machineSpecification = machineSpecification;
return this;
}
public Builder sourceImageId(String sourceImageId) {
this.sourceImageId = sourceImageId;
return this;
}
public Builder networkId(String networkId) {
this.networkId = networkId;
return this;
}
public Builder privateIpAddress(String privateIpAddress) {
this.privateIpAddress = privateIpAddress;
return this;
}
public Builder publicIpAddress(String publicIpAddress) {
this.publicIpAddress = publicIpAddress;
return this;
}
public Builder machineName(String machineName) {
this.machineName = machineName;
return this;
}
public Builder isStarted(boolean isStarted) {
this.isStarted = isStarted;
return this;
}
public Builder deployedTime(String deployedTime) {
this.deployedTime = deployedTime;
return this;
}
public Builder status(Status status) {
this.status = status;
return this;
}
public DeployedServer build() {
return new DeployedServer(id, name, description, machineSpecification, sourceImageId, networkId, privateIpAddress,
publicIpAddress, machineName, isStarted, deployedTime, status);
}
public Builder fromDeployedServer(DeployedServer in) {
return new Builder().id(id).name(name).description(description).machineSpecification(machineSpecification)
.sourceImageId(sourceImageId).networkId(networkId).privateIpAddress(privateIpAddress).publicIpAddress(publicIpAddress)
.machineName(machineName).isStarted(isStarted).deployedTime(deployedTime).status(status);
}
}
private DeployedServer() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="id")
private String id;
@XmlElement(namespace = SERVER, name="name")
private String name;
@XmlElement(namespace = SERVER, name="description")
private String description;
@XmlElement(namespace = SERVER, name="machineSpecification")
private MachineSpecification machineSpecification;
@XmlElement(namespace = SERVER, name="sourceImageId")
private String sourceImageId;
@XmlElement(namespace = SERVER, name="networkId")
private String networkId;
@XmlElement(namespace = SERVER, name="privateIpAddress")
private String privateIpAddress;
@XmlElement(namespace = SERVER, name="publicIpAddress")
private String publicIpAddress;
@XmlElement(namespace = SERVER, name="machineName")
private String machineName;
@XmlElement(namespace = SERVER, name="isStarted")
private boolean isStarted;
@XmlElement(namespace = SERVER, name="deployedTime")
private String deployedTime;
@XmlElement(namespace = SERVER, name="status")
private Status status;
private DeployedServer(String id, String name, String description, MachineSpecification machineSpecification, String sourceImageId,
String networkId, String privateIpAddress, String publicIpAddress, String machineName, boolean isStarted, String deployedTime, Status status) {
super(id, name, description);
this.machineSpecification = machineSpecification;
this.sourceImageId = sourceImageId;
this.networkId = networkId;
this.privateIpAddress = privateIpAddress;
this.publicIpAddress = publicIpAddress;
this.machineName = machineName;
this.isStarted = isStarted;
this.deployedTime = deployedTime;
this.status = status;
}
public MachineSpecification getMachineSpecification() {
return machineSpecification;
}
public String getSourceImageId() {
return sourceImageId;
}
public String getNetworkId() {
return networkId;
}
public String getPrivateIpAddress() {
return privateIpAddress;
}
public String getPublicIpAddress() {
return publicIpAddress;
}
public String getMachineName() {
return machineName;
}
public boolean isStarted() {
return isStarted;
}
public String getDeployedTime() {
return deployedTime;
}
public Status getStatus() {
return status;
}
@Override
public boolean equals(Object o) {
return super.equals(o);
}
@Override
public int hashCode() {
return super.hashCode() + Objects.hashCode(id, name, description, machineSpecification, sourceImageId, networkId,
privateIpAddress, publicIpAddress, machineName, isStarted, deployedTime, status);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("id", id).add("name", name).add("description", description).
add("machineSpecification", machineSpecification).add("sourceImageId", sourceImageId).add("networkId", networkId).
add("privateIpAddress", privateIpAddress).add("publicIpAddress", publicIpAddress).add("machineName", machineName).
add("isStarted", isStarted).add("deployedTime", deployedTime).add("status", status).toString();
}
}

View File

@ -0,0 +1,103 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static com.google.common.base.Preconditions.checkNotNull;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import java.util.Set;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
/**
* Represents list of data centers for an account
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "DeployedServers")
public class DeployedServersList {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder();
}
public static class Builder {
Set<DeployedServer> deployedServers = Sets.newLinkedHashSet();;
public Builder deployedServers(Set<DeployedServer> deployedServers) {
this.deployedServers = Sets.newLinkedHashSet(checkNotNull(deployedServers, "deployedServers"));
return this;
}
public Builder deployedServer(DeployedServer deployedServer) {
this.deployedServers.add(checkNotNull(deployedServer, "deployedServer"));
return this;
}
public DeployedServersList build() {
return new DeployedServersList(deployedServers);
}
}
private DeployedServersList() {
// For JAXB and builder use
}
@XmlElement(name = "DeployedServer", namespace = SERVER)
private Set<DeployedServer> deployedServers = Sets.newLinkedHashSet();
private DeployedServersList(Set<DeployedServer> deployedServers) {
this.deployedServers = ImmutableSet.copyOf(deployedServers);
}
public Set<DeployedServer> getDeployedServers() {
return deployedServers;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
DeployedServersList that = DeployedServersList.class.cast(o);
return super.equals(that) && equal(deployedServers, that.deployedServers);
}
@Override
public int hashCode() {
return Objects.hashCode(deployedServers);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("deployedServers", deployedServers).toString();
}
}

View File

@ -0,0 +1,150 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
*
*/
@XmlRootElement(name = "machineSpecification", namespace = SERVER)
public class MachineSpecification {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromMachineSpecification(this);
}
public static class Builder {
private int cpuCount;
private long memoryMb;
private long osStorageGb;
private long additionalLocalStorageGb;
private OperatingSystem operatingSystem;
public Builder cpuCount(int cpuCount) {
this.cpuCount = cpuCount;
return this;
}
public Builder memoryMb(long memoryMb) {
this.memoryMb = memoryMb;
return this;
}
public Builder osStorageGb(long osStorageGb) {
this.osStorageGb = osStorageGb;
return this;
}
public Builder additionalLocalStorageGb(long additionalLocalStorageGb) {
this.additionalLocalStorageGb = additionalLocalStorageGb;
return this;
}
public Builder operatingSystem(OperatingSystem operatingSystem) {
this.operatingSystem = operatingSystem;
return this;
}
public MachineSpecification build() {
return new MachineSpecification(cpuCount, memoryMb, osStorageGb, additionalLocalStorageGb, operatingSystem);
}
public Builder fromMachineSpecification(MachineSpecification in) {
return new Builder().cpuCount(cpuCount).memoryMb(memoryMb).osStorageGb(osStorageGb).additionalLocalStorageGb(additionalLocalStorageGb)
.operatingSystem(operatingSystem);
}
}
private MachineSpecification() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER)
private int cpuCount;
@XmlElement(namespace = SERVER)
private long memoryMb;
@XmlElement(namespace = SERVER)
private long osStorageGb;
@XmlElement(namespace = SERVER)
private long additionalLocalStorageGb;
@XmlElement(namespace = SERVER)
private OperatingSystem operatingSystem;
private MachineSpecification(int cpuCount, long memoryMb, long osStorageGb, long additionalLocalStorageGb, OperatingSystem operatingSystem) {
this.cpuCount = cpuCount;
this.memoryMb = memoryMb;
this.osStorageGb = osStorageGb;
this.additionalLocalStorageGb = additionalLocalStorageGb;
this.operatingSystem = operatingSystem;
}
public int getCpuCount() {
return cpuCount;
}
public long getMemoryMb() {
return memoryMb;
}
public long getOsStorageGb() {
return osStorageGb;
}
public long getAdditionalLocalStorageGb() {
return additionalLocalStorageGb;
}
public OperatingSystem getOperatingSystem() {
return operatingSystem;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
MachineSpecification that = MachineSpecification.class.cast(o);
return equal(this, that);
}
@Override
public int hashCode() {
return Objects.hashCode(cpuCount, memoryMb, osStorageGb, additionalLocalStorageGb, operatingSystem);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("cpuCount", cpuCount).add("memoryMb", memoryMb).add("osStorageGb", osStorageGb)
.add("additionalLocalStorageGb", additionalLocalStorageGb).add("operatingSystem", operatingSystem).toString();
}
}

View File

@ -0,0 +1,109 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
* Holds operating system information for {@link ServerImage}
* @author Kedar Dave
*/
@XmlRootElement(name = "operatingSystem", namespace = SERVER)
public class OperatingSystem {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromOperatingSystem(this);
}
public static class Builder {
private String osType;
private String displayName;
public Builder osType(String osType) {
this.osType = osType;
return this;
}
public Builder displayName(String displayName) {
this.displayName = displayName;
return this;
}
public OperatingSystem build() {
return new OperatingSystem(osType, displayName);
}
public Builder fromOperatingSystem(OperatingSystem in) {
return new Builder().osType(in.getOsType()).displayName(in.getDisplayName());
}
}
private OperatingSystem() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="type")
private String osType;
@XmlElement(namespace = SERVER, name="displayName")
private String displayName;
private OperatingSystem(String osType, String displayName) {
this.osType = osType;
this.displayName = displayName;
}
public String getOsType() {
return osType;
}
public String getDisplayName() {
return displayName;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
OperatingSystem that = OperatingSystem.class.cast(o);
return equal(osType, that.osType) && equal(displayName, that.displayName);
}
@Override
public int hashCode() {
return Objects.hashCode(osType, displayName);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("osType", osType).add("displayName", displayName).toString();
}
}

View File

@ -0,0 +1,173 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "PendingDeployServer")
public class PendingDeployServer extends BaseServer{
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromPendingDeployServer(this);
}
public static class Builder {
private String id;
private String name;
private String description;
private MachineSpecification machineSpecification;
private String sourceImageId;
private String networkId;
private String privateIpAddress;
private Status status;
public Builder id(String id) {
this.id = id;
return this;
}
public Builder name(String name) {
this.name = name;
return this;
}
public Builder description(String description) {
this.description = description;
return this;
}
public Builder machineSpecification(MachineSpecification machineSpecification) {
this.machineSpecification = machineSpecification;
return this;
}
public Builder sourceImageId(String sourceImageId) {
this.sourceImageId = sourceImageId;
return this;
}
public Builder networkId(String networkId) {
this.networkId = networkId;
return this;
}
public Builder privateIpAddress(String privateIpAddress) {
this.privateIpAddress = privateIpAddress;
return this;
}
public Builder status(Status status) {
this.status = status;
return this;
}
public PendingDeployServer build() {
return new PendingDeployServer(id, name, description, machineSpecification, sourceImageId, networkId,
privateIpAddress, status);
}
public Builder fromPendingDeployServer(PendingDeployServer in) {
return new Builder().id(id).name(name).description(description).machineSpecification(machineSpecification)
.sourceImageId(sourceImageId).networkId(networkId).privateIpAddress(privateIpAddress).status(status);
}
}
private PendingDeployServer() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="id")
private String id;
@XmlElement(namespace = SERVER, name="name")
private String name;
@XmlElement(namespace = SERVER, name="description")
private String description;
@XmlElement(namespace = SERVER, name="machineSpecification")
private MachineSpecification machineSpecification;
@XmlElement(namespace = SERVER, name="sourceImageId")
private String sourceImageId;
@XmlElement(namespace = SERVER, name="networkId")
private String networkId;
@XmlElement(namespace = SERVER, name="privateIpAddress")
private String privateIpAddress;
@XmlElement(namespace = SERVER, name="status")
private Status status;
private PendingDeployServer(String id, String name, String description, MachineSpecification machineSpecification, String sourceImageId,
String networkId, String privateIpAddress, Status status) {
super(id, name, description);
this.machineSpecification = machineSpecification;
this.sourceImageId = sourceImageId;
this.networkId = networkId;
this.privateIpAddress = privateIpAddress;
this.status = status;
}
public MachineSpecification getMachineSpecification() {
return machineSpecification;
}
public String getSourceImageId() {
return sourceImageId;
}
public String getNetworkId() {
return networkId;
}
public String getPrivateIpAddress() {
return privateIpAddress;
}
public Status getStatus() {
return status;
}
@Override
public boolean equals(Object o) {
return super.equals(o);
}
@Override
public int hashCode() {
return super.hashCode() + Objects.hashCode(id, name, description, machineSpecification, sourceImageId, networkId,
privateIpAddress, status);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("id", id).add("name", name).add("description", description).
add("machineSpecification", machineSpecification).add("sourceImageId", sourceImageId).add("networkId", networkId).
add("privateIpAddress", privateIpAddress).add("status", status).toString();
}
}

View File

@ -0,0 +1,103 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static com.google.common.base.Preconditions.checkNotNull;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import java.util.Set;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
/**
* Represents list of data centers for an account
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "PendingDeployServers")
public class PendingDeployServersList {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder();
}
public static class Builder {
Set<PendingDeployServer> pendingDeployServers = Sets.newLinkedHashSet();;
public Builder pendingDeployServers(Set<PendingDeployServer> pendingDeployServers) {
this.pendingDeployServers = Sets.newLinkedHashSet(checkNotNull(pendingDeployServers, "pendingDeployServers"));
return this;
}
public Builder pendingDeployServer(PendingDeployServer pendingDeployServer) {
this.pendingDeployServers.add(checkNotNull(pendingDeployServer, "pendingDeployServer"));
return this;
}
public PendingDeployServersList build() {
return new PendingDeployServersList(pendingDeployServers);
}
}
private PendingDeployServersList() {
// For JAXB and builder use
}
@XmlElement(name = "PendingDeployServer", namespace = SERVER)
private Set<PendingDeployServer> pendingDeployServers = Sets.newLinkedHashSet();
private PendingDeployServersList(Set<PendingDeployServer> pendingDeployServers) {
this.pendingDeployServers = ImmutableSet.copyOf(pendingDeployServers);
}
public Set<PendingDeployServer> getPendingDeployServers() {
return pendingDeployServers;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
PendingDeployServersList that = PendingDeployServersList.class.cast(o);
return super.equals(that) && equal(pendingDeployServers, that.pendingDeployServers);
}
@Override
public int hashCode() {
return Objects.hashCode(pendingDeployServers);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("pendingDeployServers", pendingDeployServers).toString();
}
}

View File

@ -0,0 +1,221 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "ServerImage")
public class ServerImage {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromServerImage(this);
}
public static class Builder {
private String id;
private String resourcePath;
private String name;
private String description;
private OperatingSystem operatingSystem;
private String location;
private int cpuCount;
private long memory;
private long osStorage;
private long additionalLocalStorage;
public Builder id(String id) {
this.id = id;
return this;
}
public Builder resourcePath(String resourcePath) {
this.resourcePath = resourcePath;
return this;
}
public Builder name(String name) {
this.name = name;
return this;
}
public Builder description(String description) {
this.description = description;
return this;
}
public Builder operatingSystem(OperatingSystem operatingSystem) {
this.operatingSystem = operatingSystem;
return this;
}
public Builder location(String location) {
this.location = location;
return this;
}
public Builder cpuCount(int cpuCount) {
this.cpuCount = cpuCount;
return this;
}
public Builder memory(long memory) {
this.memory = memory;
return this;
}
public Builder osStorage(long osStorage) {
this.osStorage = osStorage;
return this;
}
public Builder additionalLocalStorage(long additionalLocalStorage) {
this.additionalLocalStorage = additionalLocalStorage;
return this;
}
public ServerImage build() {
return new ServerImage(id, resourcePath, name, description, operatingSystem, location, cpuCount,
memory, osStorage, additionalLocalStorage);
}
public Builder fromServerImage(ServerImage in) {
return new Builder().id(id).resourcePath(resourcePath).name(name).description(description)
.operatingSystem(operatingSystem).location(location).cpuCount(cpuCount).memory(memory)
.osStorage(osStorage).additionalLocalStorage(additionalLocalStorage);
}
}
private ServerImage() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="id")
private String id;
@XmlElement(namespace = SERVER, name="resourcePath")
private String resourcePath;
@XmlElement(namespace = SERVER, name="name")
private String name;
@XmlElement(namespace = SERVER, name="description")
private String description;
@XmlElement(namespace = SERVER, name="operatingSystem")
private OperatingSystem operatingSystem;
@XmlElement(namespace = SERVER, name="location")
private String location;
@XmlElement(namespace = SERVER, name="cpuCount")
private long cpuCount;
@XmlElement(namespace = SERVER, name="memory")
private long memory;
@XmlElement(namespace = SERVER, name="osStorage")
private long osStorage;
@XmlElement(namespace = SERVER, name="additionalLocalStorage")
private long additionalLocalStorage;
private ServerImage(String id, String resourcePath, String name, String description, OperatingSystem operatingSystem,
String location, long cpuCount, long memory, long osStorage, long additionalLocalStorage) {
this.id = id;
this.resourcePath = resourcePath;
this.name = name;
this.description = description;
this.operatingSystem = operatingSystem;
this.location = location;
this.cpuCount = cpuCount;
this.memory = memory;
this.osStorage = osStorage;
this.additionalLocalStorage = additionalLocalStorage;
}
public String getId() {
return id;
}
public String getResourcePath() {
return resourcePath;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
public OperatingSystem getOperatingSystem() {
return operatingSystem;
}
public String getLocation() {
return location;
}
public long getCpuCount() {
return cpuCount;
}
public long getMemory() {
return memory;
}
public long getOsStorage() {
return osStorage;
}
public long getAdditionalLocalStorage() {
return additionalLocalStorage;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
ServerImage that = ServerImage.class.cast(o);
return equal(id, that.id);
}
@Override
public int hashCode() {
return Objects.hashCode(id, resourcePath, name, description, operatingSystem, location,
cpuCount, memory, osStorage, additionalLocalStorage);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("id", id).add("resourcePath", resourcePath).add("name", name).
add("description", description).add("operatingSystem", operatingSystem).add("location", location).
add("cpuCount", cpuCount).add("memory", memory).add("osStorage", osStorage).
add("additionalLocalStorage", additionalLocalStorage).toString();
}
}

View File

@ -0,0 +1,103 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static com.google.common.base.Preconditions.checkNotNull;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import java.util.Set;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
/**
* Represents set of OS Server Images from which servers may be deployed
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "ServerImages")
public class ServerImagesList {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder();
}
public static class Builder {
Set<ServerImage> serverImages = Sets.newLinkedHashSet();;
public Builder dataCenters(Set<ServerImage> serverImages) {
this.serverImages = Sets.newLinkedHashSet(checkNotNull(serverImages, "serverImages"));
return this;
}
public Builder serverImage(ServerImage serverImage) {
this.serverImages.add(checkNotNull(serverImage, "serverImage"));
return this;
}
public ServerImagesList build() {
return new ServerImagesList(serverImages);
}
}
private ServerImagesList() {
// For JAXB and builder use
}
@XmlElement(name = "ServerImage", namespace = SERVER)
private Set<ServerImage> serverImages = Sets.newLinkedHashSet();
private ServerImagesList(Set<ServerImage> serverImages) {
this.serverImages = ImmutableSet.copyOf(serverImages);
}
public Set<ServerImage> getServerImages() {
return serverImages;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
ServerImagesList that = ServerImagesList.class.cast(o);
return super.equals(that) && equal(serverImages, that.serverImages);
}
@Override
public int hashCode() {
return Objects.hashCode(serverImages);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("serverImages", serverImages).toString();
}
}

View File

@ -0,0 +1,177 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "status")
public class Status {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromStatus(this);
}
public static class Builder {
private String action;
private String requestTime;
private String userName;
private int numberOfSteps;
private String updateTime;
private Step step;
private String failureReason;
public Builder action(String action) {
this.action = action;
return this;
}
public Builder requestTime(String requestTime) {
this.requestTime = requestTime;
return this;
}
public Builder userName(String userName) {
this.userName = userName;
return this;
}
public Builder numberOfSteps(int numberOfSteps) {
this.numberOfSteps = numberOfSteps;
return this;
}
public Builder updateTime(String updateTime) {
this.updateTime = updateTime;
return this;
}
public Builder step(Step step) {
this.step = step;
return this;
}
public Builder failureReason(String failureReason) {
this.failureReason = failureReason;
return this;
}
public Status build() {
return new Status(action, requestTime, userName, numberOfSteps, updateTime, step, failureReason);
}
public Builder fromStatus(Status in) {
return new Builder().action(action).requestTime(requestTime).userName(userName).numberOfSteps(numberOfSteps)
.updateTime(updateTime).step(step).failureReason(failureReason);
}
}
private Status() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="action")
private String action;
@XmlElement(namespace = SERVER, name="requestTime")
private String requestTime;
@XmlElement(namespace = SERVER, name="userName")
private String userName;
@XmlElement(namespace = SERVER, name="numberOfSteps")
private int numberOfSteps;
@XmlElement(namespace = SERVER, name="updateTime")
private String updateTime;
@XmlElement(namespace = SERVER, name="step")
private Step step;
@XmlElement(namespace = SERVER, name="failureReason")
private String failureReason;
private Status(String action, String requestTime, String userName, int numberOfSteps, String updateTime,
Step step, String failureReason) {
this.action = action;
this.requestTime = requestTime;
this.userName = userName;
this.numberOfSteps = numberOfSteps;
this.updateTime = updateTime;
this.step = step;
this.failureReason = failureReason;
}
public String getAction() {
return action;
}
public String getRequestTime() {
return requestTime;
}
public String getUserName() {
return userName;
}
public int getNumberOfSteps() {
return numberOfSteps;
}
public String getUpdateTime() {
return updateTime;
}
public Step getStep() {
return step;
}
public String getFailureReason() {
return failureReason;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
Status that = Status.class.cast(o);
return equal(this, that);
}
@Override
public int hashCode() {
return Objects.hashCode(action, requestTime, userName, numberOfSteps, updateTime, step, failureReason);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("action", action).add("requestTime", requestTime).add("userName", userName).
add("numberOfSteps", numberOfSteps).add("updateTime", updateTime).add("step", step).add("failureReason", failureReason).toString();
}
}

View File

@ -0,0 +1,122 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.domain;
import static com.google.common.base.Objects.equal;
import static org.jclouds.opsource.servers.OpSourceNameSpaces.SERVER;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import com.google.common.base.Objects;
/**
*
* @author Kedar Dave
*/
@XmlRootElement(namespace = SERVER, name = "step")
public class Step {
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().fromStep(this);
}
public static class Builder {
private String name;
private int number;
private int percentComplete;
public Builder name(String name) {
this.name = name;
return this;
}
public Builder number(int number) {
this.number = number;
return this;
}
public Builder percentComplete(int percentComplete) {
this.percentComplete = percentComplete;
return this;
}
public Step build() {
return new Step(name, number, percentComplete);
}
public Builder fromStep(Step in) {
return new Builder().name(name).number(number).percentComplete(percentComplete);
}
}
private Step() {
// For JAXB and builder use
}
@XmlElement(namespace = SERVER, name="name")
private String name;
@XmlElement(namespace = SERVER, name="number")
private int number;
@XmlElement(namespace = SERVER, name="percentComplete")
private int percentComplete;
private Step(String name, int number, int percentComplete) {
this.name = name;
this.number = number;
this.percentComplete = percentComplete;
}
public String getName() {
return name;
}
public int getNumber() {
return number;
}
public int getPercentComplete() {
return percentComplete;
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
Step that = Step.class.cast(o);
return equal(this, that);
}
@Override
public int hashCode() {
return Objects.hashCode(name, number, percentComplete);
}
@Override
public String toString() {
return Objects.toStringHelper("").add("name", name).add("number", number).add("percentComplete", percentComplete).toString();
}
}

View File

@ -21,9 +21,11 @@ package org.jclouds.opsource.servers.features;
import javax.ws.rs.Consumes; import javax.ws.rs.Consumes;
import javax.ws.rs.GET; import javax.ws.rs.GET;
import javax.ws.rs.Path; import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import org.jclouds.http.filters.BasicAuthentication; import org.jclouds.http.filters.BasicAuthentication;
import org.jclouds.opsource.servers.domain.Account; import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.DataCentersList;
import org.jclouds.rest.annotations.JAXBResponseParser; import org.jclouds.rest.annotations.JAXBResponseParser;
import org.jclouds.rest.annotations.RequestFilters; import org.jclouds.rest.annotations.RequestFilters;
@ -45,4 +47,13 @@ public interface AccountAsyncClient {
@JAXBResponseParser @JAXBResponseParser
ListenableFuture<Account> getMyAccount(); ListenableFuture<Account> getMyAccount();
/**
* @see AccountClient#getDataCentersWithLimits()
*/
@GET
@Path("/{org-id}/datacenterWithLimits")
@Consumes
@JAXBResponseParser
ListenableFuture<DataCentersList> getDataCentersWithLimits(@PathParam("org-id") String orgId);
} }

View File

@ -22,6 +22,7 @@ import java.util.concurrent.TimeUnit;
import org.jclouds.concurrent.Timeout; import org.jclouds.concurrent.Timeout;
import org.jclouds.opsource.servers.domain.Account; import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.DataCentersList;
/** /**
* Provides synchronous access to Account. * Provides synchronous access to Account.
@ -41,4 +42,11 @@ public interface AccountClient {
*/ */
Account getMyAccount(); Account getMyAccount();
/**
* identifies the list of data centers available to the organization of the authenticating user
* @param orgId
* @return
*/
DataCentersList getDataCentersWithLimits(String orgId);
} }

View File

@ -0,0 +1,59 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import org.jclouds.http.filters.BasicAuthentication;
import org.jclouds.opsource.servers.domain.DeployedServersList;
import org.jclouds.opsource.servers.domain.PendingDeployServersList;
import org.jclouds.rest.annotations.JAXBResponseParser;
import org.jclouds.rest.annotations.RequestFilters;
import com.google.common.util.concurrent.ListenableFuture;
/**
* @see ServerClient
* @author Kedar Dave
*/
@RequestFilters(BasicAuthentication.class)
public interface ServerAsyncClient {
/**
* @see ServerClient#getDeployedServers()
*/
@GET
@Path("/{org-id}/server/deployed")
@Consumes
@JAXBResponseParser
ListenableFuture<DeployedServersList> getDeployedServers(@PathParam("org-id") String orgId);
/**
* @see ServerClient#getPendingDeployServers()
*/
@GET
@Path("/{org-id}/server/pendingDeploy")
@Consumes
@JAXBResponseParser
ListenableFuture<PendingDeployServersList> getPendingDeployServers(@PathParam("org-id") String orgId);
}

View File

@ -0,0 +1,47 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import java.util.concurrent.TimeUnit;
import org.jclouds.concurrent.Timeout;
import org.jclouds.opsource.servers.domain.DeployedServersList;
import org.jclouds.opsource.servers.domain.PendingDeployServersList;
/**
* Provides synchronous access to server api's.
* <p/>
*
* @see ServerAsyncClient
* @author Kedar Dave
*/
@Timeout(duration = 180, timeUnit = TimeUnit.SECONDS)
public interface ServerClient {
/**
* @see ServerAsyncClient#getDeployedServers()
*/
DeployedServersList getDeployedServers(String orgId);
/**
* @see ServerAsyncClient#getPendingDeployServers()
*/
PendingDeployServersList getPendingDeployServers(String orgId);
}

View File

@ -0,0 +1,48 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import org.jclouds.http.filters.BasicAuthentication;
import org.jclouds.opsource.servers.domain.ServerImagesList;
import org.jclouds.rest.annotations.JAXBResponseParser;
import org.jclouds.rest.annotations.RequestFilters;
import com.google.common.util.concurrent.ListenableFuture;
/**
* @see ServerImageClient
* @author Kedar Dave
*/
@RequestFilters(BasicAuthentication.class)
public interface ServerImageAsyncClient {
/**
* @see ServerImageClient#getServerImages()
*/
@GET
@Path("/base/image")
@Consumes
@JAXBResponseParser
ListenableFuture<ServerImagesList> getServerImages();
}

View File

@ -0,0 +1,41 @@
/**
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import java.util.concurrent.TimeUnit;
import org.jclouds.concurrent.Timeout;
import org.jclouds.opsource.servers.domain.ServerImagesList;
/**
* Provides synchronous access to ServerImage.
* <p/>
*
* @see ServerImageAsyncClient
* @author Kedar Dave
*/
@Timeout(duration = 180, timeUnit = TimeUnit.SECONDS)
public interface ServerImageClient {
/**
* @see ServerImageAsyncClient#getServerImages()
*/
ServerImagesList getServerImages();
}

View File

@ -19,6 +19,7 @@
package org.jclouds.opsource.servers.features; package org.jclouds.opsource.servers.features;
import org.jclouds.opsource.servers.domain.Account; import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.DataCentersList;
import org.jclouds.opsource.servers.internal.BaseOpSourceServersClientLiveTest; import org.jclouds.opsource.servers.internal.BaseOpSourceServersClientLiveTest;
import org.testng.annotations.Test; import org.testng.annotations.Test;
@ -35,4 +36,11 @@ public class AccountClientLiveTest extends BaseOpSourceServersClientLiveTest {
assert account.getOrgId() != null; assert account.getOrgId() != null;
} }
public void testGetDataCenterWithLimits() {
Account account = context.getApi().getAccountClient().getMyAccount();
assert account.getOrgId() != null;
DataCentersList dataCentersList = context.getApi().getAccountClient().getDataCentersWithLimits(account.getOrgId());
assert dataCentersList != null;
}
} }

View File

@ -0,0 +1,49 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.domain.DeployedServersList;
import org.jclouds.opsource.servers.domain.PendingDeployServersList;
import org.jclouds.opsource.servers.internal.BaseOpSourceServersClientLiveTest;
import org.testng.annotations.Test;
/**
* Tests live behavior of {@link ServerClient}.
*
* @author Kedar Dave
*/
@Test(groups = { "live" }, singleThreaded = true, testName = "ServerClientLiveTest")
public class ServerClientLiveTest extends BaseOpSourceServersClientLiveTest {
public void testGetDeployedServers() {
Account account = context.getApi().getAccountClient().getMyAccount();
assert account.getOrgId() != null;
DeployedServersList deployedServersList = context.getApi().getServerClient().getDeployedServers(account.getOrgId());
assert deployedServersList != null;
}
public void testGetPendingDeployServers() {
Account account = context.getApi().getAccountClient().getMyAccount();
assert account.getOrgId() != null;
PendingDeployServersList pendingDeployServersList = context.getApi().getServerClient().getPendingDeployServers(account.getOrgId());
assert pendingDeployServersList != null;
}
}

View File

@ -0,0 +1,60 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import static org.testng.Assert.assertEquals;
import java.net.URI;
import org.jclouds.http.HttpRequest;
import org.jclouds.http.HttpResponse;
import org.jclouds.opsource.servers.OpSourceServersClient;
import org.jclouds.opsource.servers.domain.Account;
import org.jclouds.opsource.servers.internal.BaseOpSourceServersRestClientExpectTest;
import org.testng.annotations.Test;
import com.google.common.collect.ImmutableMultimap;
/**
* Allows us to test the {@link ServerImageClient}
*
* @author Kedar Dave
*/
@Test(groups = { "unit" }, singleThreaded = true, testName = "AccountClientExpectTest")
public class ServerImageClientExpectTest extends BaseOpSourceServersRestClientExpectTest {
@Test
public void testGetMyAccount() {
OpSourceServersClient client = requestSendsResponse(
HttpRequest
.builder()
.method("GET")
.endpoint(URI.create("https://api.opsourcecloud.net/oec/0.9/myaccount"))
.headers(
ImmutableMultimap.<String, String> builder().put("Accept", "*/*")
.put("Authorization", "Basic dXNlcjpwYXNzd29yZA==").build()).build(),
HttpResponse.builder().statusCode(200).payload(payloadFromResource("/myaccount.xml")).build());
Account expected = Account.builder().orgId("8a8f6abc-2745-4d8a-9cbc-8dabe5a7d0e4").build();
assertEquals(client.getAccountClient().getMyAccount(), expected);
}
}

View File

@ -0,0 +1,38 @@
/*
* Licensed to jclouds, Inc. (jclouds) under one or more
* contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. jclouds 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.opsource.servers.features;
import org.jclouds.opsource.servers.domain.ServerImagesList;
import org.jclouds.opsource.servers.internal.BaseOpSourceServersClientLiveTest;
import org.testng.annotations.Test;
/**
* Tests live behavior of {@link ServerImageClient}.
*
* @author Kedar Dave
*/
@Test(groups = { "live" }, singleThreaded = true, testName = "ServerImageClientLiveTest")
public class ServerImageClientLiveTest extends BaseOpSourceServersClientLiveTest {
public void testGetServerImages() {
ServerImagesList serverImagesList = context.getApi().getServerImageClient().getServerImages();
assert serverImagesList != null;
}
}

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns8:DatacentersWithLimits xmlns="http://oec.api.opsource.net/schemas/server" xmlns:ns14="http://oec.api.opsource.net/schemas/storage" xmlns:ns15="http://oec.api.opsource.net/schemas/manualimport" xmlns:ns9="http://oec.api.opsource.net/schemas/general" xmlns:ns5="http://oec.api.opsource.net/schemas/vip" xmlns:ns12="http://oec.api.opsource.net/schemas/reset" xmlns:ns6="http://oec.api.opsource.net/schemas/imageimportexport" xmlns:ns13="http://oec.api.opsource.net/schemas/support" xmlns:ns7="http://oec.api.opsource.net/schemas/whitelabel" xmlns:ns10="http://oec.api.opsource.net/schemas/ipplan" xmlns:ns8="http://oec.api.opsource.net/schemas/datacenter" xmlns:ns11="http://oec.api.opsource.net/schemas/multigeo" xmlns:ns2="http://oec.api.opsource.net/schemas/directory" xmlns:ns4="http://oec.api.opsource.net/schemas/network" xmlns:ns3="http://oec.api.opsource.net/schemas/organization">
<ns8:datacenterWithLimits>
<ns8:location>NA1</ns8:location>
<ns8:displayName>US - East</ns8:displayName>
<ns8:city>Ashburn</ns8:city>
<ns8:state>Virginia</ns8:state>
<ns8:country>US</ns8:country>
<ns8:vpnUrl>https://opsource-na1.cloud-vpn.net/</ns8:vpnUrl>
<ns8:default>true</ns8:default>
<ns8:maxCpu>8</ns8:maxCpu>
<ns8:maxRamMb>65536</ns8:maxRamMb>
</ns8:datacenterWithLimits>
<ns8:datacenterWithLimits>
<ns8:location>NA3</ns8:location>
<ns8:displayName>US - West</ns8:displayName>
<ns8:city>Santa Clara</ns8:city>
<ns8:state>California</ns8:state>
<ns8:country>US</ns8:country>
<ns8:vpnUrl>https://na3.cloud-vpn.net</ns8:vpnUrl>
<ns8:default>false</ns8:default>
<ns8:maxCpu>4</ns8:maxCpu>
<ns8:maxRamMb>32768</ns8:maxRamMb>
</ns8:datacenterWithLimits>
</ns8:DatacentersWithLimits>

View File

@ -0,0 +1,216 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeployedServers xmlns="http://oec.api.opsource.net/schemas/server" xmlns:ns14="http://oec.api.opsource.net/schemas/storage" xmlns:ns15="http://oec.api.opsource.net/schemas/manualimport" xmlns:ns9="http://oec.api.opsource.net/schemas/general" xmlns:ns5="http://oec.api.opsource.net/schemas/vip" xmlns:ns12="http://oec.api.opsource.net/schemas/reset" xmlns:ns6="http://oec.api.opsource.net/schemas/imageimportexport" xmlns:ns13="http://oec.api.opsource.net/schemas/support" xmlns:ns7="http://oec.api.opsource.net/schemas/whitelabel" xmlns:ns10="http://oec.api.opsource.net/schemas/ipplan" xmlns:ns8="http://oec.api.opsource.net/schemas/datacenter" xmlns:ns11="http://oec.api.opsource.net/schemas/multigeo" xmlns:ns2="http://oec.api.opsource.net/schemas/directory" xmlns:ns4="http://oec.api.opsource.net/schemas/network" xmlns:ns3="http://oec.api.opsource.net/schemas/organization">
<DeployedServer>
<id>0e32cbcc-af24-44b2-9366-44e31b129d45</id>
<name>CloudDemo3</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>4096</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>150</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>2b4768ed-852a-4372-bb4b-cc5f5540b11d</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.23</privateIpAddress>
<publicIpAddress>207.20.38.141</publicIpAddress>
<machineName>10-166-17-23</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-10-27T20:07:25.718Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>f8ff5765-2108-43bf-81bd-6360b427eaad</id>
<name>PRDOSTCPAPP01</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>2048</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>70</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>5181c83e-655e-4c58-9535-7f4c28719c1e</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.13</privateIpAddress>
<machineName>10-166-17-13</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-08-26T22:03:39.624Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>7023d27b-ad69-4d29-a555-2d7406603f60</id>
<name>PRDOSTCPAPP02</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>2048</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>70</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>9fa2664f-f891-4b16-90a7-12d78303790b</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.15</privateIpAddress>
<machineName>10-166-17-15</machineName>
<isStarted>false</isStarted>
<deployedTime>2011-09-07T17:59:57.818Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>8374aff6-788b-4be7-92b8-ae1616eb670e</id>
<name>PRDOSTCPDB01</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>2048</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>70</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>f04b3933-f4b6-42b9-94ac-d1ea10abe700</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.11</privateIpAddress>
<machineName>10-166-17-11</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-08-26T22:02:52.590Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>dcba26c8-5cee-409a-bbf9-181d87896648</id>
<name>PRDOSTCPDB02</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>2048</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>70</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>1bccf60a-d771-495f-bf9f-e4ec24b13bec</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.17</privateIpAddress>
<machineName>10-166-17-17</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-09-06T23:07:09.201Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>baff15d5-12b3-4a68-8506-25b798ad7f13</id>
<name>PRDOSTCPLDAP01</name>
<description></description>
<machineSpecification>
<cpuCount>1</cpuCount>
<memoryMb>1024</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>0</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>f426fe93-d798-446b-bf5a-7d82bb9dc85a</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.12</privateIpAddress>
<publicIpAddress>207.20.38.142</publicIpAddress>
<machineName>10-166-17-12</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-08-26T22:03:14.200Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>6f8f4ee4-a5f2-452e-a2d4-3f1a76a5b680</id>
<name>PRDOSTCPLDAP02</name>
<description></description>
<machineSpecification>
<cpuCount>1</cpuCount>
<memoryMb>1024</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>0</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>307f3bbb-44c1-4cbf-aa1b-2df968c8859c</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.18</privateIpAddress>
<machineName>10-166-17-18</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-09-06T23:07:39.854Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>e9d644d2-64f2-442f-9eda-8e8dc1502b67</id>
<name>PRDOSTCPWEB01</name>
<description></description>
<machineSpecification>
<cpuCount>1</cpuCount>
<memoryMb>1024</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>0</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>e92aef53-c03a-4671-992b-6be940ed8a3b</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.14</privateIpAddress>
<machineName>10-166-17-14</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-08-26T22:03:54.312Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>a7e347ae-caa8-4906-bf1e-906cf3469b80</id>
<name>PRODOSTCPWEB02</name>
<description></description>
<machineSpecification>
<cpuCount>1</cpuCount>
<memoryMb>1024</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>0</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>aa966b57-af4f-4695-8bd5-fe4e014db894</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.16</privateIpAddress>
<machineName>10-166-17-16</machineName>
<isStarted>true</isStarted>
<deployedTime>2011-09-07T17:18:29.111Z</deployedTime>
</DeployedServer>
<DeployedServer>
<id>8cae8be0-69dc-449d-9d88-ce22a69a34bb</id>
<name>TCSP-PROD-MIRROR</name>
<description></description>
<machineSpecification>
<cpuCount>2</cpuCount>
<memoryMb>4096</memoryMb>
<osStorageGb>10</osStorageGb>
<additionalLocalStorageGb>150</additionalLocalStorageGb>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
</machineSpecification>
<sourceImageId>71413392-1483-4bdf-8e83-204bacca92b0</sourceImageId>
<networkId>220b3d5a-b90e-11e0-9963-001517c46400</networkId>
<privateIpAddress>10.166.17.20</privateIpAddress>
<publicIpAddress>207.20.38.138</publicIpAddress>
<machineName>10-166-17-20</machineName>
<isStarted>false</isStarted>
<deployedTime>2012-02-29T23:40:04.840Z</deployedTime>
</DeployedServer>
</DeployedServers>

View File

@ -0,0 +1,995 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServerImages xmlns="http://oec.api.opsource.net/schemas/server" xmlns:ns14="http://oec.api.opsource.net/schemas/storage" xmlns:ns15="http://oec.api.opsource.net/schemas/manualimport" xmlns:ns9="http://oec.api.opsource.net/schemas/general" xmlns:ns5="http://oec.api.opsource.net/schemas/vip" xmlns:ns12="http://oec.api.opsource.net/schemas/reset" xmlns:ns6="http://oec.api.opsource.net/schemas/imageimportexport" xmlns:ns13="http://oec.api.opsource.net/schemas/support" xmlns:ns7="http://oec.api.opsource.net/schemas/whitelabel" xmlns:ns10="http://oec.api.opsource.net/schemas/ipplan" xmlns:ns8="http://oec.api.opsource.net/schemas/datacenter" xmlns:ns11="http://oec.api.opsource.net/schemas/multigeo" xmlns:ns2="http://oec.api.opsource.net/schemas/directory" xmlns:ns4="http://oec.api.opsource.net/schemas/network" xmlns:ns3="http://oec.api.opsource.net/schemas/organization">
<ServerImage>
<id>ad58c616-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58c616-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 64-bit 1 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>ad58ca62-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58ca62-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 64-bit 1 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>ad58d048-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58d048-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 64-bit 2 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>ad58d264-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58d264-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 64-bit 2 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>ad58d430-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58d430-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 32-bit 1 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>ad58d8cc-fbd0-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ad58d8cc-fbd0-11e0-9963-001517c46400</resourcePath>
<name>RedHat 6.1 32-bit 1 CPU</name>
<description>RedHat 6.1 Enterprise (Santiago), 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT6/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T10:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed8b72-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed8b72-ebea-11df-bdc1-001517c46384</resourcePath>
<name>RedHat 5.7 64-bit 1 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9534478-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9534478-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 5.7 64-bit 1 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed8dca-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed8dca-ebea-11df-bdc1-001517c46384</resourcePath>
<name>RedHat 5.7 64-bit 2 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9534824-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9534824-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 5.7 64-bit 2 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed8ed8-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed8ed8-ebea-11df-bdc1-001517c46384</resourcePath>
<name>RedHat 5.7 64-bit 4 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>6144</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a95349be-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95349be-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 5.7 64-bit 4 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>6144</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>0c231ef0-2a42-11e0-bfb5-001517c46384</id>
<resourcePath>/oec/base/image/0c231ef0-2a42-11e0-bfb5-001517c46384</resourcePath>
<name>RedHat 64-bit 2 CPU with MySQL</name>
<description>RedHat 5.7 Enterprise with MySQL 5.5 installed</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>8192</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-01-27T18:19:58.000Z</created>
</ServerImage>
<ServerImage>
<id>a95371d2-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95371d2-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 64-bit 2 CPU with MySQL</name>
<description>RedHat 5.7 Enterprise with MySQL 5.5 installed</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>8192</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>2fb5261a-2a42-11e0-bfb5-001517c46384</id>
<resourcePath>/oec/base/image/2fb5261a-2a42-11e0-bfb5-001517c46384</resourcePath>
<name>RedHat 64-bit 2 CPU with PostgreSQL</name>
<description>RedHat 5.7 Enterprise with PostgreSQL 9.0 installed</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>8192</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-01-27T18:20:57.000Z</created>
</ServerImage>
<ServerImage>
<id>a9537a38-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9537a38-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 64-bit 2 CPU with PostgreSQL</name>
<description>RedHat 5.7 Enterprise with PostgreSQL 9.0 installed</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>8192</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>6fc040ae-3605-11e0-bfb5-001517c46384</id>
<resourcePath>/oec/base/image/6fc040ae-3605-11e0-bfb5-001517c46384</resourcePath>
<name>RedHat 5.7 32-bit 1 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-02-11T17:36:19.000Z</created>
</ServerImage>
<ServerImage>
<id>a9534b58-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9534b58-ddf9-11e0-9963-001517c46400</resourcePath>
<name>RedHat 5.7 32-bit 1 CPU</name>
<description>RedHat 5.7 Enterprise (Tikanga), 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>6925214c-3d07-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/6925214c-3d07-11e1-b29c-001517c4643e</resourcePath>
<name>CentOS 6.0 64-bit 1 CPU</name>
<description>CentOS 6.0 (Final)</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS6/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-12T10:23:03.000Z</created>
</ServerImage>
<ServerImage>
<id>b67d274e-1757-11e1-9963-001517c46400</id>
<resourcePath>/oec/base/image/b67d274e-1757-11e1-9963-001517c46400</resourcePath>
<name>CentOS 6.0 64-bit 1 CPU</name>
<description>CentOS 6.0 (Final)</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS6/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-11-25T11:22:08.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed91da-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed91da-ebea-11df-bdc1-001517c46384</resourcePath>
<name>CentOS 5.6 64-bit 1 CPU</name>
<description>CentOS release 5.6, 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS5/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9536764-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536764-ddf9-11e0-9963-001517c46400</resourcePath>
<name>CentOS 5.6 64-bit 1 CPU</name>
<description>CentOS release 5.6, 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS5/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed90cc-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed90cc-ebea-11df-bdc1-001517c46384</resourcePath>
<name>CentOS 5.6 32-bit 1 CPU</name>
<description>CentOS release 5.6, 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS5/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a95365f2-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95365f2-ddf9-11e0-9963-001517c46400</resourcePath>
<name>CentOS 5.6 32-bit 1 CPU</name>
<description>CentOS release 5.6, 32-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>CENTOS5/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>cda6a034-4b5b-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/cda6a034-4b5b-11e1-b29c-001517c4643e</resourcePath>
<name>Ubuntu 10.04.3 2 CPU</name>
<description>Ubuntu 10.04.3 LTS, 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>UBUNTU10/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-30T16:02:26.000Z</created>
</ServerImage>
<ServerImage>
<id>e9249c10-4c02-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/e9249c10-4c02-11e1-b29c-001517c4643e</resourcePath>
<name>Ubuntu 10.04.3 2 CPU</name>
<description>Ubuntu 10.04.3 LTS, 64-bit </description>
<operatingSystem>
<type>UNIX</type>
<displayName>UBUNTU10/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-31T11:58:38.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed92d4-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed92d4-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Ubuntu 8.04.4 2 CPU</name>
<description>Ubuntu 8.04.4 LTS, 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>UBUNTU8/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9535454-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9535454-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Ubuntu 8.04.4 2 CPU</name>
<description>Ubuntu 8.04.4 LTS, 64-bit</description>
<operatingSystem>
<type>UNIX</type>
<displayName>UBUNTU8/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed876c-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed876c-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Ent 64-bit R2 2 CPU</name>
<description>Windows 2008 Enterprise R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a953562a-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a953562a-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-bit R2 2 CPU</name>
<description>Windows 2008 Enterprise R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed8a5a-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed8a5a-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Ent 64-bit R2 4 CPU</name>
<description>Windows 2008 Enterprise R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a95357b0-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95357b0-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-bit R2 4 CPU</name>
<description>Windows 2008 Enterprise R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>095742a4-378a-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/095742a4-378a-11e1-b29c-001517c4643e</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SQL Ent</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Server 2008 R2 Enterprise edition</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-05T10:42:59.000Z</created>
</ServerImage>
<ServerImage>
<id>6b1bcf3e-fbbf-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/6b1bcf3e-fbbf-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SQL Std</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Server 2008 R2 Standard edition</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-21T09:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>c87d3c9c-3d11-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/c87d3c9c-3d11-11e1-b29c-001517c4643e</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SQL Ent</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Server 2008 R2 Enterprise edition</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-12T11:37:18.000Z</created>
</ServerImage>
<ServerImage>
<id>543cbfde-f96d-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/543cbfde-f96d-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SQL Std</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Server 2008 R2 Standard edition</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-10-18T09:00:00.000Z</created>
</ServerImage>
<ServerImage>
<id>3018092e-4b6b-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/3018092e-4b6b-11e1-b29c-001517c4643e</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SP Fnd</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Express &amp; SharePoint Foundation 2010</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-30T17:52:33.000Z</created>
</ServerImage>
<ServerImage>
<id>36915134-4c2e-11e1-b29c-001517c4643e</id>
<resourcePath>/oec/base/image/36915134-4c2e-11e1-b29c-001517c4643e</resourcePath>
<name>Win2008 Ent 64-Bit R2 MS SP Fnd</name>
<description>Windows 2008 Enterprise R2 64-bit installed with Microsoft SQL Express &amp; SharePoint Foundation 2010</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>8192</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2012-01-31T17:08:36.000Z</created>
</ServerImage>
<ServerImage>
<id>a95361ba-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95361ba-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 32-bit 2 CPU</name>
<description>Windows 2008 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008E/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>cdfe3b38-ea9d-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/cdfe3b38-ea9d-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-bit 2 CPU</name>
<description>Windows 2008 Enterprise SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-29T13:20:30.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7ea2-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7ea2-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Ent 32-bit 2 CPU</name>
<description>Windows 2008 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008E/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9535918-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9535918-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 64-bit R2 2 CPU</name>
<description>Windows 2008 Standard R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2S/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>a9536052-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536052-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 64-bit 4 CPU</name>
<description>Windows 2008 Standard SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>6144</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed865e-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed865e-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Std 64-bit R2 2 CPU</name>
<description>Windows 2008 Standard R2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008R2S/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9535bca-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9535bca-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 32-bit 1 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>ca691894-ea9d-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ca691894-ea9d-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 64-bit 4 CPU</name>
<description>Windows 2008 Standard SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>6144</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-29T13:20:24.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7b96-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7b96-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Std 32-bit 1 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9535d6e-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9535d6e-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 32-bit 2 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7cb8-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7cb8-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Std 32-bit 2 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9535ef4-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9535ef4-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Std 32-bit 4 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>a9536322-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536322-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2008 Ent 64-bit 2 CPU</name>
<description>Windows 2008 Enterprise SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7da8-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7da8-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2008 Std 32-bit 4 CPU</name>
<description>Windows 2008 Standard SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2008S/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>4096</memory>
<osStorage>50</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9536d18-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536d18-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Ent 64-bit 2 CPU</name>
<description>Windows 2003 Enterprise SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>ce0ce084-ea9d-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/ce0ce084-ea9d-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Ent 64-bit 2 CPU</name>
<description>Windows 2003 Enterprise SP2 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-29T13:20:30.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7a88-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7a88-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2003 Std 64-bit 2 CPU</name>
<description>Windows 2003 Standard x64 SP2, 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003S/64</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9536e94-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536e94-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Std 64-bit 2 CPU</name>
<description>Windows 2003 Standard x64 SP2, 64-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003S/64</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed766e-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed766e-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2003 Ent 32-bit 1 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a95368e0-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a95368e0-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Ent 32-bit 1 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>1</cpuCount>
<memory>2048</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7876-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7876-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2003 Ent 32-bit 2 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9536a66-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536a66-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Ent 32-bit 2 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
<ServerImage>
<id>52ed7984-ebea-11df-bdc1-001517c46384</id>
<resourcePath>/oec/base/image/52ed7984-ebea-11df-bdc1-001517c46384</resourcePath>
<name>Win2003 Ent 32-bit 4 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA1</location>
<cpuCount>4</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>1970-01-01T00:00:02.010Z</created>
</ServerImage>
<ServerImage>
<id>a9536bba-ddf9-11e0-9963-001517c46400</id>
<resourcePath>/oec/base/image/a9536bba-ddf9-11e0-9963-001517c46400</resourcePath>
<name>Win2003 Ent 32-bit 4 CPU</name>
<description>Windows 2003 Enterprise SP2 32-bit</description>
<operatingSystem>
<type>WINDOWS</type>
<displayName>WIN2003E/32</displayName>
</operatingSystem>
<location>NA3</location>
<cpuCount>4</cpuCount>
<memory>4096</memory>
<osStorage>16</osStorage>
<additionalLocalStorage>0</additionalLocalStorage>
<created>2011-09-13T11:15:17.000Z</created>
</ServerImage>
</ServerImages>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<PendingDeployServers xmlns="http://oec.api.opsource.net/schemas/server" xmlns:ns14="http://oec.api.opsource.net/schemas/storage" xmlns:ns15="http://oec.api.opsource.net/schemas/manualimport" xmlns:ns9="http://oec.api.opsource.net/schemas/general" xmlns:ns5="http://oec.api.opsource.net/schemas/vip" xmlns:ns12="http://oec.api.opsource.net/schemas/reset" xmlns:ns6="http://oec.api.opsource.net/schemas/imageimportexport" xmlns:ns13="http://oec.api.opsource.net/schemas/support" xmlns:ns7="http://oec.api.opsource.net/schemas/whitelabel" xmlns:ns10="http://oec.api.opsource.net/schemas/ipplan" xmlns:ns8="http://oec.api.opsource.net/schemas/datacenter" xmlns:ns11="http://oec.api.opsource.net/schemas/multigeo" xmlns:ns2="http://oec.api.opsource.net/schemas/directory" xmlns:ns4="http://oec.api.opsource.net/schemas/network" xmlns:ns3="http://oec.api.opsource.net/schemas/organization"/>

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Server xmlns="http://oec.api.opsource.net/schemas/server" xmlns:ns14="http://oec.api.opsource.net/schemas/storage" xmlns:ns15="http://oec.api.opsource.net/schemas/manualimport" xmlns:ns9="http://oec.api.opsource.net/schemas/general" xmlns:ns5="http://oec.api.opsource.net/schemas/vip" xmlns:ns12="http://oec.api.opsource.net/schemas/reset" xmlns:ns6="http://oec.api.opsource.net/schemas/imageimportexport" xmlns:ns13="http://oec.api.opsource.net/schemas/support" xmlns:ns7="http://oec.api.opsource.net/schemas/whitelabel" xmlns:ns10="http://oec.api.opsource.net/schemas/ipplan" xmlns:ns8="http://oec.api.opsource.net/schemas/datacenter" xmlns:ns11="http://oec.api.opsource.net/schemas/multigeo" xmlns:ns2="http://oec.api.opsource.net/schemas/directory" xmlns:ns4="http://oec.api.opsource.net/schemas/network" xmlns:ns3="http://oec.api.opsource.net/schemas/organization">
<id>0e32cbcc-af24-44b2-9366-44e31b129d45</id>
<name>CloudDemo3</name>
<description></description>
<vlanResourcePath>/oec/2a56409b-20cd-4d88-8358-2f32cce915c4/network/220b3d5a-b90e-11e0-9963-001517c46400</vlanResourcePath>
<imageResourcePath></imageResourcePath>
<operatingSystem>
<type>UNIX</type>
<displayName>REDHAT5/64</displayName>
</operatingSystem>
<cpuCount>2</cpuCount>
<memory>4096</memory>
<osStorage>10</osStorage>
<additionalLocalStorage>150</additionalLocalStorage>
<machineName>10-166-17-23</machineName>
<privateIPAddress>10.166.17.23</privateIPAddress>
<isDeployed>true</isDeployed>
<isStarted>true</isStarted>
<created>2011-10-27T20:07:25.718Z</created>
</Server>