http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteIPForwardingRuleResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteIPForwardingRuleResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteIPForwardingRuleResponseTest.java new file mode 100644 index 0000000..6080c4a --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteIPForwardingRuleResponseTest.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DeleteIPForwardingRuleResponseTest") +public class DeleteIPForwardingRuleResponseTest extends BaseItemParserTest<Long> { + + @Override + public String resource() { + return "/deleteipforwardingruleresponse.json"; + } + + @Override + @SelectJson("jobid") + public Long expected() { + return 50005l; + } + +}
http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteNetworkResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteNetworkResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteNetworkResponseTest.java new file mode 100644 index 0000000..1e90ee8 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeleteNetworkResponseTest.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DeleteNetworkResponseTest") +public class DeleteNetworkResponseTest extends BaseItemParserTest<Long> { + + @Override + public String resource() { + return "/deletenetworkresponse.json"; + } + + @Override + @SelectJson("jobid") + public Long expected() { + return 45612l; + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse3xTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse3xTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse3xTest.java new file mode 100644 index 0000000..c366297 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse3xTest.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.cloudstack.domain.AsyncCreateResponse; +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DeployVirtualMachineResponse3xTest") +public class DeployVirtualMachineResponse3xTest extends BaseItemParserTest<AsyncCreateResponse> { + + @Override + public String resource() { + return "/deployvirtualmachineresponse.json"; + } + + @Override + @SelectJson({ "deployvirtualmachine", "deployvirtualmachineresponse" }) + public AsyncCreateResponse expected() { + return AsyncCreateResponse.builder().id("1234").jobId("50006").build(); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse4xTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse4xTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse4xTest.java new file mode 100644 index 0000000..936656a --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DeployVirtualMachineResponse4xTest.java @@ -0,0 +1,38 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.cloudstack.domain.AsyncCreateResponse; +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DeployVirtualMachineResponse3xTest") +public class DeployVirtualMachineResponse4xTest extends BaseItemParserTest<AsyncCreateResponse> { + + @Override + public String resource() { + return "/deployvirtualmachineresponse4x.json"; + } + + @Override + @SelectJson({ "deployvirtualmachine", "deployvirtualmachineresponse" }) + public AsyncCreateResponse expected() { + return AsyncCreateResponse.builder().id("1cce6cb7-2268-47ff-9696-d9e610f6619a") + .jobId("13330fc9-8b3e-4582-aa3e-90883c041ff0").build(); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DisableStaticNATResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DisableStaticNATResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DisableStaticNATResponseTest.java new file mode 100644 index 0000000..65c8d9f --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/DisableStaticNATResponseTest.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DisableStaticNATResponseTest") +public class DisableStaticNATResponseTest extends BaseItemParserTest<Long> { + + @Override + public String resource() { + return "/disablestaticnatresponse.json"; + } + + @Override + @SelectJson("jobid") + public Long expected() { + return 50006l; + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/EnableStaticNATResponseWhereResponseDoesntHaveJobTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/EnableStaticNATResponseWhereResponseDoesntHaveJobTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/EnableStaticNATResponseWhereResponseDoesntHaveJobTest.java new file mode 100644 index 0000000..81ad59a --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/EnableStaticNATResponseWhereResponseDoesntHaveJobTest.java @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import javax.ws.rs.Consumes; +import javax.ws.rs.core.MediaType; + +import org.jclouds.cloudstack.domain.AsyncCreateResponse; +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.Unwrap; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "EnableStaticNATResponseWhereResponseDoesntHaveJobTest") +public class EnableStaticNATResponseWhereResponseDoesntHaveJobTest extends BaseItemParserTest<AsyncCreateResponse> { + + @Override + public String resource() { + return "/enablestaticnatresponse-withoutjob.json"; + } + + @Override + @Unwrap + @Consumes(MediaType.APPLICATION_JSON) + public AsyncCreateResponse expected() { + return AsyncCreateResponse.UNINITIALIZED; + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/JobResultResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/JobResultResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/JobResultResponseTest.java new file mode 100644 index 0000000..630e1d5 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/JobResultResponseTest.java @@ -0,0 +1,38 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.cloudstack.domain.JobResult; +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit", testName = "DeleteNetworkResponseTest") +public class JobResultResponseTest extends BaseItemParserTest<JobResult> { + + @Override + public String resource() { + return "/deletetemplateresponse.json"; + } + + @Override + @SelectJson("jobresult") + public JobResult expected() { + return JobResult.builder().success(true).build(); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAccountsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAccountsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAccountsResponseTest.java new file mode 100644 index 0000000..5aa1e8b --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAccountsResponseTest.java @@ -0,0 +1,96 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.Account; +import org.jclouds.cloudstack.domain.User; +import org.jclouds.cloudstack.domain.Account.State; +import org.jclouds.cloudstack.domain.Account.Type; +import org.jclouds.date.internal.SimpleDateFormatDateService; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListAccountsResponseTest extends BaseSetParserTest<Account> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + + }); + + } + + @Override + public String resource() { + return "/listaccountsresponse.json"; + } + + @Override + @SelectJson("account") + public Set<Account> expected() { + return ImmutableSet.<Account> of(Account + .builder() + .id("505") + .name("jclouds") + .type(Type.USER) + .domainId("457") + .domain("AA000062-jclouds-dev") + .receivedBytes(318900216) + .sentBytes(23189677) + .VMLimit(15l) + .VMs(1) + .IPsAvailable(14l) + .IPLimit(15l) + .IPs(0) + .IPsAvailable(15l) + .volumeLimit(90l) + .volumes(2) + .volumesAvailable(88l) + .snapshotLimit(250l) + .snapshots(0) + .snapshotsAvailable(250l) + .templateLimit(15l) + .templates(0) + .templatesAvailable(15l) + .VMsAvailable(14l) + .VMsStopped(0) + .VMsRunning(1) + .state(State.ENABLED) + .users( + ImmutableSet.of(User.builder().id("505").name("jclouds").firstName("Adrian").lastName("Cole") + .email("[email protected]") + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-04-19T01:57:24+0000")) + .state(User.State.ENABLED).account("jclouds").accountType(Type.USER).domainId("457") + .domain("AA000062-jclouds-dev").apiKey("APIKEY").secretKey("SECRETKEY").build())).build()); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAlertsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAlertsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAlertsResponseTest.java new file mode 100644 index 0000000..db284ae --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListAlertsResponseTest.java @@ -0,0 +1,69 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Calendar; +import java.util.Set; +import java.util.TimeZone; + +import org.jclouds.cloudstack.domain.Alert; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListAlertsResponseTest extends BaseSetParserTest<Alert> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + + }); + + } + + @Override + public String resource() { + return "/listalertsresponse.json"; + } + + @Override + @SelectJson("alert") + public Set<Alert> expected() { + Calendar c = Calendar.getInstance(TimeZone.getTimeZone("GMT+02:00")); + c.set(Calendar.YEAR, 2011); + c.set(Calendar.MONTH, Calendar.DECEMBER); + c.set(Calendar.DAY_OF_MONTH, 4); + c.set(Calendar.HOUR_OF_DAY, 10); + c.set(Calendar.MINUTE, 5); + c.set(Calendar.SECOND, 2); + return ImmutableSet.of(Alert.builder() + .id("20").description("Failed to deploy Vm with Id: 52").sent(c.getTime()).type("7").build()); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapabilitiesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapabilitiesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapabilitiesResponseTest.java new file mode 100644 index 0000000..ec83197 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapabilitiesResponseTest.java @@ -0,0 +1,39 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import org.jclouds.cloudstack.domain.Capabilities; +import org.jclouds.json.BaseItemParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +@Test(groups = "unit") +public class ListCapabilitiesResponseTest extends BaseItemParserTest<Capabilities> { + + @Override + public String resource() { + return "/listcapabilitiesresponse.json"; + } + + @Override + @SelectJson("capability") + public Capabilities expected() { + return Capabilities.builder().securityGroupsEnabled(true).canShareTemplates(true).cloudStackVersion("2.2") + .build(); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapacityResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapacityResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapacityResponseTest.java new file mode 100644 index 0000000..9fc4d53 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListCapacityResponseTest.java @@ -0,0 +1,48 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.Capacity; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListCapacityResponseTest extends BaseSetParserTest<Capacity> { + + @Override + public String resource() { + return "/listcapacityresponse.json"; + } + + @Override + @SelectJson("capacity") + public Set<Capacity> expected() { + Capacity a = Capacity.builder().type(Capacity.Type.PRIMARY_STORAGE_ALLOCATED_BYTES) + .zoneId("1").zoneName("Dev Zone 1").podId("null").podName("All") + .capacityUsed(34057748480L).capacityTotal(1796712955904L).percentUsed(1.9).build(); + Capacity b = Capacity.builder().type(Capacity.Type.PRIMARY_STORAGE_ALLOCATED_BYTES) + .zoneId("1").zoneName("Dev Zone 1").podId("1").podName("Dev Pod 1") + .capacityUsed(34057748480L).capacityTotal(1796712955904L).percentUsed(1.9).build(); + return ImmutableSet.of(a, b); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListClustersResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListClustersResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListClustersResponseTest.java new file mode 100644 index 0000000..bb3327a --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListClustersResponseTest.java @@ -0,0 +1,65 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.AllocationState; +import org.jclouds.cloudstack.domain.Cluster; +import org.jclouds.cloudstack.domain.Host; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListClustersResponseTest extends BaseSetParserTest<Cluster> { + + @Override + public String resource() { + return "/listclustersresponse.json"; + } + + @Override + @SelectJson("cluster") + public Set<Cluster> expected() { + Cluster cluster1 = Cluster.builder() + .id("1") + .name("Xen Clust 1") + .podId("1").podName("Dev Pod 1") + .zoneId("1").zoneName("Dev Zone 1") + .hypervisor("XenServer") + .clusterType(Host.ClusterType.CLOUD_MANAGED) + .allocationState(AllocationState.ENABLED) + .managedState(Cluster.ManagedState.MANAGED) + .build(); + Cluster cluster2 = Cluster.builder() + .id("2") + .name("Xen Clust 1") + .podId("2").podName("Dev Pod 2") + .zoneId("2").zoneName("Dev Zone 2") + .hypervisor("XenServer") + .clusterType(Host.ClusterType.CLOUD_MANAGED) + .allocationState(AllocationState.ENABLED) + .managedState(Cluster.ManagedState.MANAGED) + .build(); + + return ImmutableSet.of(cluster1, cluster2); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListConfigurationEntriesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListConfigurationEntriesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListConfigurationEntriesResponseTest.java new file mode 100644 index 0000000..4935c1e --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListConfigurationEntriesResponseTest.java @@ -0,0 +1,63 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.ConfigurationEntry; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListConfigurationEntriesResponseTest extends BaseSetParserTest<ConfigurationEntry> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + + }); + } + + @Override + public String resource() { + return "/listconfigurationsresponse.json"; + } + + @Override + @SelectJson("configuration") + public Set<ConfigurationEntry> expected() { + return ImmutableSet.of( + ConfigurationEntry.builder().category("Advanced").name("account.cleanup.interval").value("86400") + .description("The interval (in seconds) between cleanup for removed accounts").build(), + ConfigurationEntry.builder().category("Advanced").name("agent.lb.enabled").value("true") + .description("If agent load balancing enabled in cluster setup").build() + ); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDiskOfferingsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDiskOfferingsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDiskOfferingsResponseTest.java new file mode 100644 index 0000000..5c55ea8 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDiskOfferingsResponseTest.java @@ -0,0 +1,54 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.DiskOffering; +import org.jclouds.date.internal.SimpleDateFormatDateService; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListDiskOfferingsResponseTest extends BaseSetParserTest<DiskOffering> { + + @Override + public String resource() { + return "/listdiskofferingsresponse.json"; + } + + @Override + @SelectJson("diskoffering") + public Set<DiskOffering> expected() { + return ImmutableSet.<DiskOffering> of( + DiskOffering.builder().id("3").domainId("1").domain("ROOT").name("Small").displayText("Small Disk, 5 GB") + .diskSize(5) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-02-11T15:22:32-0800")) + .customized(false).build(), + DiskOffering.builder().id("4").domainId("1").domain("ROOT").name("Medium").displayText("Medium Disk, 20 GB") + .diskSize(20) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-02-11T15:22:32-0800")) + .customized(false).build(), + DiskOffering.builder().id("5").domainId("1").domain("ROOT").name("Large").displayText("Large Disk, 100 GB") + .diskSize(100) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-02-11T15:22:32-0800")) + .customized(false).build()); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDomainsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDomainsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDomainsResponseTest.java new file mode 100644 index 0000000..5a3a8fd --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListDomainsResponseTest.java @@ -0,0 +1,60 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.Domain; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListDomainsResponseTest extends BaseSetParserTest<Domain> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + }); + } + + @Override + public String resource() { + return "/listdomainsresponse.json"; + } + + @Override + @SelectJson("domain") + public Set<Domain> expected() { + return ImmutableSet.of( + Domain.builder().id("1").name("ROOT").level(0).hasChild(true).build(), + Domain.builder().id("2").name("jclouds1").level(1).parentDomainId("1") + .parentDomainName("ROOT").hasChild(false).build() + ); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListFirewallRulesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListFirewallRulesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListFirewallRulesResponseTest.java new file mode 100644 index 0000000..6af9dff --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListFirewallRulesResponseTest.java @@ -0,0 +1,66 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.FirewallRule; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListFirewallRulesResponseTest extends BaseSetParserTest<FirewallRule> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + + }); + } + + @Override + public String resource() { + return "/listfirewallrulesresponse.json"; + } + + @Override + @SelectJson("firewallrule") + public Set<FirewallRule> expected() { + Set<String> CIDRs = ImmutableSet.of("0.0.0.0/0"); + return ImmutableSet.of( + FirewallRule.builder().id("2017").protocol(FirewallRule.Protocol.TCP).startPort(30) + .endPort(35).ipAddressId("2").ipAddress("10.27.27.51").state(FirewallRule.State.ACTIVE).CIDRs(CIDRs).build(), + FirewallRule.builder().id("2016").protocol(FirewallRule.Protocol.TCP).startPort(22) + .endPort(22).ipAddressId("2").ipAddress("10.27.27.51").state(FirewallRule.State.ACTIVE).CIDRs(CIDRs).build(), + FirewallRule.builder().id("10").protocol(FirewallRule.Protocol.TCP).startPort(22) + .endPort(22).ipAddressId("8").ipAddress("10.27.27.57").state(FirewallRule.State.ACTIVE).CIDRs(CIDRs).build() + ); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHostsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHostsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHostsResponseTest.java new file mode 100644 index 0000000..b4f5855 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHostsResponseTest.java @@ -0,0 +1,153 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import static org.testng.Assert.assertEquals; + +import java.util.Set; + +import org.jclouds.cloudstack.config.CloudStackParserModule; +import org.jclouds.cloudstack.domain.AllocationState; +import org.jclouds.cloudstack.domain.Host; +import org.jclouds.date.internal.SimpleDateFormatDateService; +import org.jclouds.json.BaseParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListHostsResponseTest extends BaseParserTest<Set<Host>, Set<Host>> { + + public void compare(Set<Host> expects, Set<Host> response) { + assertEquals(response.toString(), expects.toString()); + } + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule(), new CloudStackParserModule()); + } + + @Override + public String resource() { + return "/listhostsresponse.json"; + } + + @Override + @SelectJson("host") + public Set<Host> expected() { + return ImmutableSet.of( + + Host.builder() + .id("1") + .name("cs2-xevsrv.alucloud.local") + .state(Host.State.UP) + .type(Host.Type.ROUTING) + .ipAddress("10.26.26.107") + .zoneId("1") + .zoneName("Dev Zone 1") + .podId("1") + .podName("Dev Pod 1") + .version("2.2.12.20110928142833") + .hypervisor("XenServer") + .cpuNumber(24) + .cpuSpeed(2266) + .cpuAllocated("2.76%") + .cpuUsed("0.1%") + .cpuWithOverProvisioning(54384.0f) + .networkKbsRead(4443L) + .networkKbsWrite(15048L) + .memoryTotal(100549733760L) + .memoryAllocated(3623878656L) + .memoryUsed(3623878656L) + .capabilities("xen-3.0-x86_64 , xen-3.0-x86_32p , hvm-3.0-x86_32 , hvm-3.0-x86_32p , hvm-3.0-x86_64") + .lastPinged(new SimpleDateFormatDateService().iso8601SecondsDateParse("1970-01-16T00:54:43+0200")) + .managementServerId("223098941760041") + .clusterId("1") + .clusterName("Xen Clust 1") + .clusterType(Host.ClusterType.CLOUD_MANAGED) + .localStorageActive(false) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-11-26T23:28:36+0200")) + .events("PrepareUnmanaged; HypervisorVersionChanged; ManagementServerDown; PingTimeout; " + + "AgentDisconnected; MaintenanceRequested; HostDown; AgentConnected; StartAgentRebalance; ShutdownRequested; Ping") + .hasEnoughCapacity(false) + .allocationState(AllocationState.ENABLED).build(), + + Host.builder() + .id("2") + .name("nfs://10.26.26.165/mnt/nfs/cs_sec") + .state(Host.State.ALERT) + .disconnected(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-11-26T23:33:38+0200")) + .type(Host.Type.SECONDARY_STORAGE) + .ipAddress("nfs") + .zoneId("1") + .zoneName("Dev Zone 1") + .version("2.2.12.20110928142833") + .hypervisor("None") + .lastPinged(new SimpleDateFormatDateService().iso8601SecondsDateParse("1970-01-16T00:42:30+0200")) + .localStorageActive(false) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-11-26T23:33:38+0200")) + .events("ManagementServerDown; AgentDisconnected; Remove; MaintenanceRequested; AgentConnected; Ping") + .hasEnoughCapacity(false) + .allocationState(AllocationState.ENABLED).build(), + + Host.builder() + .id("3") + .name("s-1-VM") + .state(Host.State.UP) + .type(Host.Type.SECONDARY_STORAGE_VM) + .ipAddress("10.26.26.81") + .zoneId("1") + .zoneName("Dev Zone 1") + .podId("1") + .podName("Dev Pod 1") + .version("2.2.12.20110928142833") + .lastPinged(new SimpleDateFormatDateService().iso8601SecondsDateParse("1970-01-16T00:54:43+0200")) + .managementServerId("223098941760041") + .localStorageActive(false) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-11-26T23:35:51+0200")) + .events("PrepareUnmanaged; HypervisorVersionChanged; ManagementServerDown; PingTimeout; " + + "AgentDisconnected; MaintenanceRequested; HostDown; AgentConnected; StartAgentRebalance; ShutdownRequested; Ping") + .hasEnoughCapacity(false) + .allocationState(AllocationState.ENABLED).build(), + + Host.builder() + .id("4") + .name("v-2-VM") + .state(Host.State.UP) + .type(Host.Type.CONSOLE_PROXY) + .ipAddress("10.26.26.96") + .zoneId("1") + .zoneName("Dev Zone 1") + .podId("1") + .podName("Dev Pod 1") + .version("2.2.12.20110928142833") + .lastPinged(new SimpleDateFormatDateService().iso8601SecondsDateParse("1970-01-16T00:54:43+0200")) + .managementServerId("223098941760041") + .localStorageActive(false) + .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-11-26T23:36:46+0200")) + .events("PrepareUnmanaged; HypervisorVersionChanged; ManagementServerDown; PingTimeout; " + + "AgentDisconnected; MaintenanceRequested; HostDown; AgentConnected; StartAgentRebalance; ShutdownRequested; Ping") + .hasEnoughCapacity(false) + .allocationState(AllocationState.ENABLED).build() + ); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHypervisorsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHypervisorsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHypervisorsResponseTest.java new file mode 100644 index 0000000..3c26223 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListHypervisorsResponseTest.java @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.functions.ParseNamesFromHttpResponse; +import org.jclouds.http.HttpResponse; +import org.jclouds.json.BaseSetParserTest; +import org.testng.annotations.Test; + +import com.google.common.base.Function; +import com.google.common.collect.ImmutableSet; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListHypervisorsResponseTest extends BaseSetParserTest<String> { + + @Override + public String resource() { + return "/listhypervisorsresponse.json"; + } + + @Override + public Set<String> expected() { + return ImmutableSet.<String> of("XenServer", "KVM", "VMware"); + } + + @Override + protected Function<HttpResponse, Set<String>> parser(Injector injector) { + return injector.getInstance(ParseNamesFromHttpResponse.class); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListIPForwardingRulesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListIPForwardingRulesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListIPForwardingRulesResponseTest.java new file mode 100644 index 0000000..203c41e --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListIPForwardingRulesResponseTest.java @@ -0,0 +1,45 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.IPForwardingRule; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListIPForwardingRulesResponseTest extends BaseSetParserTest<IPForwardingRule> { + + @Override + public String resource() { + return "/listipforwardingrulesresponse.json"; + } + + @Override + @SelectJson("ipforwardingrule") + public Set<IPForwardingRule> expected() { + return ImmutableSet.<IPForwardingRule> of( + IPForwardingRule.builder().id("66").protocol("tcp").startPort(22).endPort(22).virtualMachineId("58") + .virtualMachineDisplayName("i-4-58-VM").virtualMachineName("i-4-58-VM") + .IPAddressId("15").IPAddress("10.27.27.64").state("Active").build()); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListLoadBalancerRulesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListLoadBalancerRulesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListLoadBalancerRulesResponseTest.java new file mode 100644 index 0000000..2c9e783 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListLoadBalancerRulesResponseTest.java @@ -0,0 +1,64 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.LoadBalancerRule; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.json.config.GsonModule; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; +import org.testng.collections.Sets; + +import com.google.common.collect.ImmutableSet; +import com.google.inject.Guice; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListLoadBalancerRulesResponseTest extends BaseSetParserTest<LoadBalancerRule> { + + @Override + protected Injector injector() { + return Guice.createInjector(new GsonModule() { + + @Override + protected void configure() { + bind(DateAdapter.class).to(Iso8601DateAdapter.class); + super.configure(); + } + + }); + } + + @Override + public String resource() { + return "/listloadbalancerrulesresponse.json"; + } + + @Override + @SelectJson("loadbalancerrule") + public Set<LoadBalancerRule> expected() { + return ImmutableSet.<LoadBalancerRule> of(LoadBalancerRule.builder() + .id("93").account("admin").algorithm(LoadBalancerRule.Algorithm.ROUNDROBIN) + .description("null").domain("ROOT").domainId("1").name("Ranny").privatePort(80) + .publicIP("10.27.27.59").publicIPId("10").publicPort(80).state(LoadBalancerRule.State.ADD) + .CIDRs(Sets.<String>newHashSet()).zoneId(null) + .build()); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworkOfferingsResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworkOfferingsResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworkOfferingsResponseTest.java new file mode 100644 index 0000000..05bd194 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworkOfferingsResponseTest.java @@ -0,0 +1,50 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import static org.jclouds.cloudstack.domain.NetworkOfferingAvailabilityType.REQUIRED; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.NetworkOffering; +import org.jclouds.cloudstack.domain.TrafficType; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListNetworkOfferingsResponseTest extends BaseSetParserTest<NetworkOffering> { + + @Override + public String resource() { + return "/listnetworkofferingsresponse.json"; + } + + @Override + @SelectJson("networkoffering") + public Set<NetworkOffering> expected() { + return ImmutableSet.<NetworkOffering>of( + NetworkOffering.builder().id("7").name("DefaultDirectNetworkOffering").displayText("Direct") + .trafficType(TrafficType.PUBLIC).isDefault(true).supportsVLAN(false).availability(REQUIRED) + .networkRate(200).build(), NetworkOffering.builder().id("6").name("DefaultVirtualizedNetworkOffering") + .displayText("Virtual Vlan").trafficType(TrafficType.GUEST).isDefault(true).supportsVLAN(false) + .availability(REQUIRED).networkRate(200).build()); + } + +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworksResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworksResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworksResponseTest.java new file mode 100644 index 0000000..65ed915 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListNetworksResponseTest.java @@ -0,0 +1,87 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.net.URI; +import java.util.Set; + +import org.jclouds.cloudstack.domain.GuestIPType; +import org.jclouds.cloudstack.domain.Network; +import org.jclouds.cloudstack.domain.NetworkService; +import org.jclouds.cloudstack.domain.TrafficType; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableSet; +import com.google.common.collect.ImmutableSortedMap; +import com.google.common.collect.ImmutableSortedSet; + +@Test(groups = "unit") +public class ListNetworksResponseTest extends BaseSetParserTest<Network> { + + @Override + public String resource() { + return "/listnetworksresponse.json"; + } + + @Override + @SelectJson("network") + public Set<Network> expected() { + return ImmutableSet + .<Network> of(Network + .builder() + .id("204") + .account("adrian") + .name("Virtual Network") + .displayText( + "A dedicated virtualized network for your account. The broadcast domain is contained within a VLAN and all public network access is routed out by a virtual router.") + .broadcastDomainType("Vlan") + .trafficType(TrafficType.GUEST) + .zoneId("1") + .networkOfferingId("6") + .networkOfferingName("DefaultVirtualizedNetworkOffering") + .networkOfferingDisplayText("Virtual Vlan") + .networkOfferingAvailability("Required") + .isShared(false) + .isSystem(false) + .state("Implemented") + .related("204") + .broadcastURI(URI.create("vlan://240")) + .DNS(ImmutableList.of("8.8.8.8")) + .guestIPType(GuestIPType.VIRTUAL) + .domain("ROOT") + .domainId("1") + .isDefault(true) + .services( + ImmutableSortedSet.of( + NetworkService.builder().name("Vpn").capabilities(ImmutableMap.of("SupportedVpnTypes", "pptp,l2tp,ipsec")).build(), + NetworkService.builder().name("Gateway").build(), + NetworkService.builder().name("UserData").build(), + NetworkService.builder().name("Dhcp").build(), + NetworkService.builder().name("Firewall").capabilities(ImmutableSortedMap.<String, String> naturalOrder() + .put("SupportedSourceNatTypes", "per account").put("StaticNat", "true") + .put("TrafficStatistics", "per public ip").put("PortForwarding", "true") + .put("MultipleIps", "true").put("SupportedProtocols", "tcp,udp").build()).build(), + NetworkService.builder().name("Dns").build(), + NetworkService.builder().name("Lb").capabilities(ImmutableMap.of("SupportedLbAlgorithms", + "roundrobin,leastconn,source", "SupportedProtocols", "tcp, udp")).build())) + .networkDomain("cs3cloud.internal").build()); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSCategoriesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSCategoriesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSCategoriesResponseTest.java new file mode 100644 index 0000000..0453777 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSCategoriesResponseTest.java @@ -0,0 +1,49 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Map; + +import org.jclouds.cloudstack.functions.ParseIdToNameFromHttpResponse; +import org.jclouds.http.HttpResponse; +import org.jclouds.json.BaseItemParserTest; +import org.testng.annotations.Test; + +import com.google.common.base.Function; +import com.google.common.collect.ImmutableMap; +import com.google.inject.Injector; + +@Test(groups = "unit") +public class ListOSCategoriesResponseTest extends BaseItemParserTest<Map<String, String>> { + + @Override + public String resource() { + return "/listoscategoriesresponse.json"; + } + + @Override + public Map<String, String> expected() { + return ImmutableMap.<String, String> builder().put("1", "CentOS").put("10", "Ubuntu").put("2", "Debian").put("3", "Oracle") + .put("4", "RedHat").put("5", "SUSE").put("6", "Windows").put("7", "Other").put("8", "Novel").put("9", "Unix") + .build(); + } + + @Override + protected Function<HttpResponse, Map<String, String>> parser(Injector injector) { + return injector.getInstance(ParseIdToNameFromHttpResponse.class); + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSTypesResponseTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSTypesResponseTest.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSTypesResponseTest.java new file mode 100644 index 0000000..91bef18 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/test/java/org/jclouds/cloudstack/parse/ListOSTypesResponseTest.java @@ -0,0 +1,192 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudstack.parse; + +import java.util.Set; + +import org.jclouds.cloudstack.domain.OSType; +import org.jclouds.json.BaseSetParserTest; +import org.jclouds.rest.annotations.SelectJson; +import org.testng.annotations.Test; + +import com.google.common.collect.ImmutableSet; + +@Test(groups = "unit") +public class ListOSTypesResponseTest extends BaseSetParserTest<OSType> { + + @Override + public String resource() { + return "/listostypesresponse.json"; + } + + @Override + @SelectJson("ostype") + public Set<OSType> expected() { + return ImmutableSet + .<OSType> builder() + .add(OSType.builder().id("69").OSCategoryId("7").description("Asianux 3(32-bit)").build()) + .add(OSType.builder().id("70").OSCategoryId("7").description("Asianux 3(64-bit)").build()) + .add(OSType.builder().id("1").OSCategoryId("1").description("CentOS 4.5 (32-bit)").build()) + .add(OSType.builder().id("2").OSCategoryId("1").description("CentOS 4.6 (32-bit)").build()) + .add(OSType.builder().id("3").OSCategoryId("1").description("CentOS 4.7 (32-bit)").build()) + .add(OSType.builder().id("4").OSCategoryId("1").description("CentOS 4.8 (32-bit)").build()) + .add(OSType.builder().id("5").OSCategoryId("1").description("CentOS 5.0 (32-bit)").build()) + .add(OSType.builder().id("6").OSCategoryId("1").description("CentOS 5.0 (64-bit)").build()) + .add(OSType.builder().id("7").OSCategoryId("1").description("CentOS 5.1 (32-bit)").build()) + .add(OSType.builder().id("8").OSCategoryId("1").description("CentOS 5.1 (64-bit)").build()) + .add(OSType.builder().id("9").OSCategoryId("1").description("CentOS 5.2 (32-bit)").build()) + .add(OSType.builder().id("10").OSCategoryId("1").description("CentOS 5.2 (64-bit)").build()) + .add(OSType.builder().id("11").OSCategoryId("1").description("CentOS 5.3 (32-bit)").build()) + .add(OSType.builder().id("12").OSCategoryId("1").description("CentOS 5.3 (64-bit)").build()) + .add(OSType.builder().id("13").OSCategoryId("1").description("CentOS 5.4 (32-bit)").build()) + .add(OSType.builder().id("14").OSCategoryId("1").description("CentOS 5.4 (64-bit)").build()) + .add(OSType.builder().id("111").OSCategoryId("1").description("CentOS 5.5 (32-bit)").build()) + .add(OSType.builder().id("112").OSCategoryId("1").description("CentOS 5.5 (64-bit)").build()) + .add(OSType.builder().id("73").OSCategoryId("2").description("Debian GNU/Linux 4(32-bit)").build()) + .add(OSType.builder().id("74").OSCategoryId("2").description("Debian GNU/Linux 4(64-bit)").build()) + .add(OSType.builder().id("72").OSCategoryId("2").description("Debian GNU/Linux 5(64-bit)").build()) + .add(OSType.builder().id("15").OSCategoryId("2").description("Debian GNU/Linux 5.0 (32-bit)").build()) + .add(OSType.builder().id("132").OSCategoryId("2").description("Debian GNU/Linux 6(32-bit)").build()) + .add(OSType.builder().id("133").OSCategoryId("2").description("Debian GNU/Linux 6(64-bit)").build()) + .add(OSType.builder().id("102").OSCategoryId("6").description("DOS").build()) + .add(OSType.builder().id("118").OSCategoryId("4").description("Fedora 10").build()) + .add(OSType.builder().id("117").OSCategoryId("4").description("Fedora 11").build()) + .add(OSType.builder().id("116").OSCategoryId("4").description("Fedora 12").build()) + .add(OSType.builder().id("115").OSCategoryId("4").description("Fedora 13").build()) + .add(OSType.builder().id("120").OSCategoryId("4").description("Fedora 8").build()) + .add(OSType.builder().id("119").OSCategoryId("4").description("Fedora 9").build()) + .add(OSType.builder().id("83").OSCategoryId("9").description("FreeBSD (32-bit)").build()) + .add(OSType.builder().id("84").OSCategoryId("9").description("FreeBSD (64-bit)").build()) + .add(OSType.builder().id("92").OSCategoryId("6").description("Microsoft Small Bussiness Server 2003").build()) + .add(OSType.builder().id("78").OSCategoryId("8").description("Novell Netware 5.1").build()) + .add(OSType.builder().id("77").OSCategoryId("8").description("Novell Netware 6.x").build()) + .add(OSType.builder().id("68").OSCategoryId("7").description("Open Enterprise Server").build()) + .add(OSType.builder().id("16").OSCategoryId("3").description("Oracle Enterprise Linux 5.0 (32-bit)").build()) + .add(OSType.builder().id("17").OSCategoryId("3").description("Oracle Enterprise Linux 5.0 (64-bit)").build()) + .add(OSType.builder().id("18").OSCategoryId("3").description("Oracle Enterprise Linux 5.1 (32-bit)").build()) + .add(OSType.builder().id("19").OSCategoryId("3").description("Oracle Enterprise Linux 5.1 (64-bit)").build()) + .add(OSType.builder().id("20").OSCategoryId("3").description("Oracle Enterprise Linux 5.2 (32-bit)").build()) + .add(OSType.builder().id("21").OSCategoryId("3").description("Oracle Enterprise Linux 5.2 (64-bit)").build()) + .add(OSType.builder().id("22").OSCategoryId("3").description("Oracle Enterprise Linux 5.3 (32-bit)").build()) + .add(OSType.builder().id("23").OSCategoryId("3").description("Oracle Enterprise Linux 5.3 (64-bit)").build()) + .add(OSType.builder().id("24").OSCategoryId("3").description("Oracle Enterprise Linux 5.4 (32-bit)").build()) + .add(OSType.builder().id("25").OSCategoryId("3").description("Oracle Enterprise Linux 5.4 (64-bit)").build()) + .add(OSType.builder().id("134").OSCategoryId("3").description("Oracle Enterprise Linux 5.5 (32-bit)").build()) + .add(OSType.builder().id("135").OSCategoryId("3").description("Oracle Enterprise Linux 5.5 (64-bit)").build()) + .add(OSType.builder().id("104").OSCategoryId("7").description("OS/2").build()) + .add(OSType.builder().id("60").OSCategoryId("7").description("Other (32-bit)").build()) + .add(OSType.builder().id("103").OSCategoryId("7").description("Other (64-bit)").build()) + .add(OSType.builder().id("75").OSCategoryId("7").description("Other 2.6x Linux (32-bit)").build()) + .add(OSType.builder().id("76").OSCategoryId("7").description("Other 2.6x Linux (64-bit)").build()) + .add(OSType.builder().id("98").OSCategoryId("7").description("Other Linux (32-bit)").build()) + .add(OSType.builder().id("99").OSCategoryId("7").description("Other Linux (64-bit)").build()) + .add(OSType.builder().id("59").OSCategoryId("10").description("Other Ubuntu (32-bit)").build()) + .add(OSType.builder().id("100").OSCategoryId("10").description("Other Ubuntu (64-bit)").build()) + .add(OSType.builder().id("131").OSCategoryId("10").description("Red Hat Enterprise Linux 2").build()) + .add(OSType.builder().id("66").OSCategoryId("4").description("Red Hat Enterprise Linux 3(32-bit)").build()) + .add(OSType.builder().id("67").OSCategoryId("4").description("Red Hat Enterprise Linux 3(64-bit)").build()) + .add(OSType.builder().id("106").OSCategoryId("4").description("Red Hat Enterprise Linux 4(64-bit)").build()) + .add(OSType.builder().id("26").OSCategoryId("4").description("Red Hat Enterprise Linux 4.5 (32-bit)").build()) + .add(OSType.builder().id("27").OSCategoryId("4").description("Red Hat Enterprise Linux 4.6 (32-bit)").build()) + .add(OSType.builder().id("28").OSCategoryId("4").description("Red Hat Enterprise Linux 4.7 (32-bit)").build()) + .add(OSType.builder().id("29").OSCategoryId("4").description("Red Hat Enterprise Linux 4.8 (32-bit)").build()) + .add(OSType.builder().id("30").OSCategoryId("4").description("Red Hat Enterprise Linux 5.0 (32-bit)").build()) + .add(OSType.builder().id("31").OSCategoryId("4").description("Red Hat Enterprise Linux 5.0 (64-bit)").build()) + .add(OSType.builder().id("32").OSCategoryId("4").description("Red Hat Enterprise Linux 5.1 (32-bit)").build()) + .add(OSType.builder().id("33").OSCategoryId("4").description("Red Hat Enterprise Linux 5.1 (64-bit)").build()) + .add(OSType.builder().id("34").OSCategoryId("4").description("Red Hat Enterprise Linux 5.2 (32-bit)").build()) + .add(OSType.builder().id("35").OSCategoryId("4").description("Red Hat Enterprise Linux 5.2 (64-bit)").build()) + .add(OSType.builder().id("36").OSCategoryId("4").description("Red Hat Enterprise Linux 5.3 (32-bit)").build()) + .add(OSType.builder().id("37").OSCategoryId("4").description("Red Hat Enterprise Linux 5.3 (64-bit)").build()) + .add(OSType.builder().id("38").OSCategoryId("4").description("Red Hat Enterprise Linux 5.4 (32-bit)").build()) + .add(OSType.builder().id("39").OSCategoryId("4").description("Red Hat Enterprise Linux 5.4 (64-bit)").build()) + .add(OSType.builder().id("113").OSCategoryId("4").description("Red Hat Enterprise Linux 5.5 (32-bit)").build()) + .add(OSType.builder().id("114").OSCategoryId("4").description("Red Hat Enterprise Linux 5.5 (64-bit)").build()) + .add(OSType.builder().id("136").OSCategoryId("4").description("Red Hat Enterprise Linux 6.0 (32-bit)").build()) + .add(OSType.builder().id("137").OSCategoryId("4").description("Red Hat Enterprise Linux 6.0 (64-bit)").build()) + .add(OSType.builder().id("85").OSCategoryId("9").description("SCO OpenServer 5").build()) + .add(OSType.builder().id("86").OSCategoryId("9").description("SCO UnixWare 7").build()) + .add(OSType.builder().id("79").OSCategoryId("9").description("Sun Solaris 10(32-bit)").build()) + .add(OSType.builder().id("80").OSCategoryId("9").description("Sun Solaris 10(64-bit)").build()) + .add(OSType.builder().id("82").OSCategoryId("9").description("Sun Solaris 8(Experimental)").build()) + .add(OSType.builder().id("81").OSCategoryId("9").description("Sun Solaris 9(Experimental)").build()) + .add(OSType.builder().id("109").OSCategoryId("5").description("SUSE Linux Enterprise 10(32-bit)").build()) + .add(OSType.builder().id("110").OSCategoryId("5").description("SUSE Linux Enterprise 10(64-bit)").build()) + .add(OSType.builder().id("96").OSCategoryId("5").description("SUSE Linux Enterprise 8(32-bit)").build()) + .add(OSType.builder().id("97").OSCategoryId("5").description("SUSE Linux Enterprise 8(64-bit)").build()) + .add(OSType.builder().id("107").OSCategoryId("5").description("SUSE Linux Enterprise 9(32-bit)").build()) + .add(OSType.builder().id("108").OSCategoryId("5").description("SUSE Linux Enterprise 9(64-bit)").build()) + .add(OSType.builder().id("41").OSCategoryId("5").description("SUSE Linux Enterprise Server 10 SP1 (32-bit)") + .build()) + .add(OSType.builder().id("42").OSCategoryId("5").description("SUSE Linux Enterprise Server 10 SP1 (64-bit)") + .build()) + .add(OSType.builder().id("43").OSCategoryId("5").description("SUSE Linux Enterprise Server 10 SP2 (32-bit)") + .build()) + .add(OSType.builder().id("44").OSCategoryId("5").description("SUSE Linux Enterprise Server 10 SP2 (64-bit)") + .build()) + .add(OSType.builder().id("45").OSCategoryId("5").description("SUSE Linux Enterprise Server 10 SP3 (64-bit)") + .build()) + .add(OSType.builder().id("46").OSCategoryId("5").description("SUSE Linux Enterprise Server 11 (32-bit)") + .build()) + .add(OSType.builder().id("47").OSCategoryId("5").description("SUSE Linux Enterprise Server 11 (64-bit)") + .build()) + .add(OSType.builder().id("40").OSCategoryId("5").description("SUSE Linux Enterprise Server 9 SP4 (32-bit)") + .build()) + .add(OSType.builder().id("121").OSCategoryId("10").description("Ubuntu 10.04 (32-bit)").build()) + .add(OSType.builder().id("126").OSCategoryId("10").description("Ubuntu 10.04 (64-bit)").build()) + .add(OSType.builder().id("125").OSCategoryId("10").description("Ubuntu 8.04 (32-bit)").build()) + .add(OSType.builder().id("130").OSCategoryId("10").description("Ubuntu 8.04 (64-bit)").build()) + .add(OSType.builder().id("124").OSCategoryId("10").description("Ubuntu 8.10 (32-bit)").build()) + .add(OSType.builder().id("129").OSCategoryId("10").description("Ubuntu 8.10 (64-bit)").build()) + .add(OSType.builder().id("123").OSCategoryId("10").description("Ubuntu 9.04 (32-bit)").build()) + .add(OSType.builder().id("128").OSCategoryId("10").description("Ubuntu 9.04 (64-bit)").build()) + .add(OSType.builder().id("122").OSCategoryId("10").description("Ubuntu 9.10 (32-bit)").build()) + .add(OSType.builder().id("127").OSCategoryId("10").description("Ubuntu 9.10 (64-bit)").build()) + .add(OSType.builder().id("95").OSCategoryId("6").description("Windows 2000 Advanced Server").build()) + .add(OSType.builder().id("105").OSCategoryId("6").description("Windows 2000 Professional").build()) + .add(OSType.builder().id("61").OSCategoryId("6").description("Windows 2000 Server").build()) + .add(OSType.builder().id("55").OSCategoryId("6").description("Windows 2000 Server SP4 (32-bit)").build()) + .add(OSType.builder().id("65").OSCategoryId("6").description("Windows 3.1").build()) + .add(OSType.builder().id("48").OSCategoryId("6").description("Windows 7 (32-bit)").build()) + .add(OSType.builder().id("49").OSCategoryId("6").description("Windows 7 (64-bit)").build()) + .add(OSType.builder().id("63").OSCategoryId("6").description("Windows 95").build()) + .add(OSType.builder().id("62").OSCategoryId("6").description("Windows 98").build()) + .add(OSType.builder().id("64").OSCategoryId("6").description("Windows NT 4").build()) + .add(OSType.builder().id("87").OSCategoryId("6").description("Windows Server 2003 DataCenter Edition(32-bit)") + .build()) + .add(OSType.builder().id("88").OSCategoryId("6").description("Windows Server 2003 DataCenter Edition(64-bit)") + .build()) + .add(OSType.builder().id("50").OSCategoryId("6").description("Windows Server 2003 Enterprise Edition(32-bit)") + .build()) + .add(OSType.builder().id("51").OSCategoryId("6").description("Windows Server 2003 Enterprise Edition(64-bit)") + .build()) + .add(OSType.builder().id("89").OSCategoryId("6").description("Windows Server 2003 Standard Edition(32-bit)") + .build()) + .add(OSType.builder().id("90").OSCategoryId("6").description("Windows Server 2003 Standard Edition(64-bit)") + .build()) + .add(OSType.builder().id("91").OSCategoryId("6").description("Windows Server 2003 Web Edition").build()) + .add(OSType.builder().id("52").OSCategoryId("6").description("Windows Server 2008 (32-bit)").build()) + .add(OSType.builder().id("53").OSCategoryId("6").description("Windows Server 2008 (64-bit)").build()) + .add(OSType.builder().id("54").OSCategoryId("6").description("Windows Server 2008 R2 (64-bit)").build()) + .add(OSType.builder().id("56").OSCategoryId("6").description("Windows Vista (32-bit)").build()) + .add(OSType.builder().id("101").OSCategoryId("6").description("Windows Vista (64-bit)").build()) + .add(OSType.builder().id("93").OSCategoryId("6").description("Windows XP (32-bit)").build()) + .add(OSType.builder().id("94").OSCategoryId("6").description("Windows XP (64-bit)").build()) + .add(OSType.builder().id("57").OSCategoryId("6").description("Windows XP SP2 (32-bit)").build()) + .add(OSType.builder().id("58").OSCategoryId("6").description("Windows XP SP3 (32-bit)").build()).build(); + } +}
