You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by bh...@apache.org on 2012/12/08 04:29:51 UTC
[15/57] api: Refactor command and response classes to
org.apache.cloudstack.api.*
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/DiskOfferingResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/DiskOfferingResponse.java b/api/src/org/apache/cloudstack/api/response/DiskOfferingResponse.java
new file mode 100644
index 0000000..96aef99
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/DiskOfferingResponse.java
@@ -0,0 +1,137 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class DiskOfferingResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="unique ID of the disk offering")
+ private IdentityProxy id = new IdentityProxy("disk_offering");
+
+ @SerializedName(ApiConstants.DOMAIN_ID) @Param(description="the domain ID this disk offering belongs to. Ignore this information as it is not currently applicable.")
+ private IdentityProxy domainId = new IdentityProxy("domain");
+
+ @SerializedName(ApiConstants.DOMAIN) @Param(description="the domain name this disk offering belongs to. Ignore this information as it is not currently applicable.")
+ private String domain;
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the disk offering")
+ private String name;
+
+ @SerializedName(ApiConstants.DISPLAY_TEXT) @Param(description="an alternate display text of the disk offering.")
+ private String displayText;
+
+ @SerializedName(ApiConstants.DISK_SIZE) @Param(description="the size of the disk offering in GB")
+ private Long diskSize;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="the date this disk offering was created")
+ private Date created;
+
+ @SerializedName("iscustomized") @Param(description="true if disk offering uses custom size, false otherwise")
+ private Boolean customized;
+
+ @SerializedName(ApiConstants.TAGS) @Param(description="the tags for the disk offering")
+ private String tags;
+
+ @SerializedName("storagetype") @Param(description="the storage type for this disk offering")
+ private String storageType;
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public Long getDomainId() {
+ return domainId.getValue();
+ }
+
+ public void setDomainId(Long domainId) {
+ this.domainId.setValue(domainId);
+ }
+
+ public String getDomain() {
+ return domain;
+ }
+
+ public void setDomain(String domain) {
+ this.domain = domain;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getDisplayText() {
+ return displayText;
+ }
+
+ public void setDisplayText(String displayText) {
+ this.displayText = displayText;
+ }
+
+ public Long getDiskSize() {
+ return diskSize;
+ }
+
+ public void setDiskSize(Long diskSize) {
+ this.diskSize = diskSize;
+ }
+
+ public Date getCreated() {
+ return created;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ public String getTags() {
+ return tags;
+ }
+
+ public void setTags(String tags) {
+ this.tags = tags;
+ }
+
+ public Boolean isCustomized() {
+ return customized;
+ }
+
+ public void setCustomized(Boolean customized) {
+ this.customized = customized;
+ }
+
+ public String getStorageType() {
+ return storageType;
+ }
+
+ public void setStorageType(String storageType) {
+ this.storageType = storageType;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/DomainResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/DomainResponse.java b/api/src/org/apache/cloudstack/api/response/DomainResponse.java
new file mode 100644
index 0000000..e97653b
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/DomainResponse.java
@@ -0,0 +1,113 @@
+// 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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
+import com.cloud.domain.Domain;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+
+@Entity(value = Domain.class)
+public class DomainResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the domain")
+ private IdentityProxy id = new IdentityProxy("domain");
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the domain")
+ private String domainName;
+
+ @SerializedName(ApiConstants.LEVEL) @Param(description="the level of the domain")
+ private Integer level;
+
+ @SerializedName("parentdomainid") @Param(description="the domain ID of the parent domain")
+ private IdentityProxy parentDomainId = new IdentityProxy("domain");
+
+ @SerializedName("parentdomainname") @Param(description="the domain name of the parent domain")
+ private String parentDomainName;
+
+ @SerializedName("haschild") @Param(description="whether the domain has one or more sub-domains")
+ private boolean hasChild;
+
+ @SerializedName(ApiConstants.NETWORK_DOMAIN) @Param(description="the network domain")
+ private String networkDomain;
+
+ @SerializedName(ApiConstants.PATH) @Param(description="the path of the domain")
+ private String path;
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public String getDomainName() {
+ return domainName;
+ }
+
+ public void setDomainName(String domainName) {
+ this.domainName = domainName;
+ }
+
+ public Integer getLevel() {
+ return level;
+ }
+
+ public void setLevel(Integer level) {
+ this.level = level;
+ }
+
+ public Long getParentDomainId() {
+ return parentDomainId.getValue();
+ }
+
+ public void setParentDomainId(Long parentDomainId) {
+ this.parentDomainId.setValue(parentDomainId);
+ }
+
+ public String getParentDomainName() {
+ return parentDomainName;
+ }
+
+ public void setParentDomainName(String parentDomainName) {
+ this.parentDomainName = parentDomainName;
+ }
+
+ public boolean getHasChild() {
+ return hasChild;
+ }
+
+ public void setHasChild(boolean hasChild) {
+ this.hasChild = hasChild;
+ }
+
+ public void setNetworkDomain(String networkDomain) {
+ this.networkDomain = networkDomain;
+ }
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java b/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java
new file mode 100644
index 0000000..b899a1d
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java
@@ -0,0 +1,334 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Set;
+
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.cloud.vm.VirtualMachine.State;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+@SuppressWarnings("unused")
+public class DomainRouterResponse extends BaseResponse implements ControlledViewEntityResponse{
+ @SerializedName(ApiConstants.ID) @Param(description="the id of the router")
+ private String id;
+
+ @SerializedName(ApiConstants.ZONE_ID) @Param(description="the Zone ID for the router")
+ private String zoneId;
+
+ @SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name for the router")
+ private String zoneName;
+
+ @SerializedName(ApiConstants.DNS1) @Param(description="the first DNS for the router")
+ private String dns1;
+
+ @SerializedName(ApiConstants.DNS2) @Param(description="the second DNS for the router")
+ private String dns2;
+
+ @SerializedName("networkdomain") @Param(description="the network domain for the router")
+ private String networkDomain;
+
+ @SerializedName(ApiConstants.GATEWAY) @Param(description="the gateway for the router")
+ private String gateway;
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the router")
+ private String name;
+
+ @SerializedName(ApiConstants.POD_ID) @Param(description="the Pod ID for the router")
+ private String podId;
+
+ @SerializedName(ApiConstants.HOST_ID) @Param(description="the host ID for the router")
+ private String hostId;
+
+ @SerializedName("hostname") @Param(description="the hostname for the router")
+ private String hostName;
+
+ @SerializedName(ApiConstants.LINK_LOCAL_IP) @Param(description="the link local IP address for the router")
+ private String linkLocalIp;
+
+ @SerializedName(ApiConstants.LINK_LOCAL_MAC_ADDRESS) @Param(description="the link local MAC address for the router")
+ private String linkLocalMacAddress;
+
+ @SerializedName(ApiConstants.LINK_LOCAL_MAC_NETMASK) @Param(description="the link local netmask for the router")
+ private String linkLocalNetmask;
+
+ @SerializedName(ApiConstants.LINK_LOCAL_NETWORK_ID) @Param(description="the ID of the corresponding link local network")
+ private String linkLocalNetworkId;
+
+ @SerializedName(ApiConstants.PUBLIC_IP) @Param(description="the public IP address for the router")
+ private String publicIp;
+
+ @SerializedName("publicmacaddress") @Param(description="the public MAC address for the router")
+ private String publicMacAddress;
+
+ @SerializedName("publicnetmask") @Param(description="the public netmask for the router")
+ private String publicNetmask;
+
+ @SerializedName("publicnetworkid") @Param(description="the ID of the corresponding public network")
+ private String publicNetworkId;
+
+ @SerializedName("guestipaddress") @Param(description="the guest IP address for the router")
+ private String guestIpAddress;
+
+ @SerializedName("guestmacaddress") @Param(description="the guest MAC address for the router")
+ private String guestMacAddress;
+
+ @SerializedName("guestnetmask") @Param(description="the guest netmask for the router")
+ private String guestNetmask;
+
+ @SerializedName("guestnetworkid") @Param(description="the ID of the corresponding guest network")
+ private String guestNetworkId;
+
+ @SerializedName(ApiConstants.TEMPLATE_ID) @Param(description="the template ID for the router")
+ private String templateId;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="the date and time the router was created")
+ private Date created;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the router")
+ private State state;
+
+ @SerializedName(ApiConstants.ACCOUNT) @Param(description="the account associated with the router")
+ private String accountName;
+
+ @SerializedName(ApiConstants.PROJECT_ID) @Param(description="the project id of the ipaddress")
+ private String projectId;
+
+ @SerializedName(ApiConstants.PROJECT) @Param(description="the project name of the address")
+ private String projectName;
+
+ @SerializedName(ApiConstants.DOMAIN_ID) @Param(description="the domain ID associated with the router")
+ private String domainId;
+
+ @SerializedName(ApiConstants.DOMAIN) @Param(description="the domain associated with the router")
+ private String domainName;
+
+ @SerializedName(ApiConstants.SERVICE_OFFERING_ID) @Param(description="the ID of the service offering of the virtual machine")
+ private String serviceOfferingId;
+
+ @SerializedName("serviceofferingname") @Param(description="the name of the service offering of the virtual machine")
+ private String serviceOfferingName;
+
+ @SerializedName("isredundantrouter") @Param(description="if this router is an redundant virtual router")
+ private boolean isRedundantRouter;
+
+ @SerializedName("redundantstate") @Param(description="the state of redundant virtual router")
+ private String redundantState;
+
+ @SerializedName("templateversion") @Param(description="the version of template")
+ private String templateVersion;
+
+ @SerializedName("scriptsversion") @Param(description="the version of scripts")
+ private String scriptsVersion;
+
+ @SerializedName(ApiConstants.VPC_ID) @Param(description="VPC the network belongs to")
+ private String vpcId;
+
+ @SerializedName("nic") @Param(description="the list of nics associated with the router",
+ responseObject = NicResponse.class, since="4.0")
+ private Set<NicResponse> nics;
+
+ public DomainRouterResponse(){
+ nics = new HashSet<NicResponse>();
+ }
+
+ @Override
+ public String getObjectUuid() {
+ return this.getId();
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public void setZoneId(String zoneId) {
+ this.zoneId = zoneId;
+ }
+
+ public void setZoneName(String zoneName) {
+ this.zoneName = zoneName;
+ }
+
+ public void setDns1(String dns1) {
+ this.dns1 = dns1;
+ }
+
+ public void setDns2(String dns2) {
+ this.dns2 = dns2;
+ }
+
+ public void setNetworkDomain(String networkDomain) {
+ this.networkDomain = networkDomain;
+ }
+
+ public void setGateway(String gateway) {
+ this.gateway = gateway;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setPodId(String podId) {
+ this.podId = podId;
+ }
+
+ public void setHostId(String hostId) {
+ this.hostId = hostId;
+ }
+
+ public void setHostName(String hostName) {
+ this.hostName = hostName;
+ }
+
+ public void setPublicIp(String publicIp) {
+ this.publicIp = publicIp;
+ }
+
+ public void setPublicMacAddress(String publicMacAddress) {
+ this.publicMacAddress = publicMacAddress;
+ }
+
+ public void setPublicNetmask(String publicNetmask) {
+ this.publicNetmask = publicNetmask;
+ }
+
+ public void setGuestIpAddress(String guestIpAddress) {
+ this.guestIpAddress = guestIpAddress;
+ }
+
+ public void setGuestMacAddress(String guestMacAddress) {
+ this.guestMacAddress = guestMacAddress;
+ }
+
+ public void setGuestNetmask(String guestNetmask) {
+ this.guestNetmask = guestNetmask;
+ }
+
+ public void setTemplateId(String templateId) {
+ this.templateId = templateId;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ public void setState(State state) {
+ this.state = state;
+ }
+
+ @Override
+ public void setAccountName(String accountName) {
+ this.accountName = accountName;
+ }
+
+ @Override
+ public void setDomainId(String domainId) {
+ this.domainId = domainId;
+ }
+
+ @Override
+ public void setDomainName(String domainName) {
+ this.domainName = domainName;
+ }
+
+ public void setPublicNetworkId(String publicNetworkId) {
+ this.publicNetworkId = publicNetworkId;
+ }
+
+ public void setGuestNetworkId(String guestNetworkId) {
+ this.guestNetworkId = guestNetworkId;
+ }
+
+ public void setLinkLocalIp(String linkLocalIp) {
+ this.linkLocalIp = linkLocalIp;
+ }
+
+ public void setLinkLocalMacAddress(String linkLocalMacAddress) {
+ this.linkLocalMacAddress = linkLocalMacAddress;
+ }
+
+ public void setLinkLocalNetmask(String linkLocalNetmask) {
+ this.linkLocalNetmask = linkLocalNetmask;
+ }
+
+ public void setLinkLocalNetworkId(String linkLocalNetworkId) {
+ this.linkLocalNetworkId = linkLocalNetworkId;
+ }
+
+ public void setServiceOfferingId(String serviceOfferingId) {
+ this.serviceOfferingId = serviceOfferingId;
+ }
+
+ public void setServiceOfferingName(String serviceOfferingName) {
+ this.serviceOfferingName = serviceOfferingName;
+ }
+
+ public void setRedundantState(String redundantState) {
+ this.redundantState = redundantState;
+ }
+
+ public void setIsRedundantRouter(boolean isRedundantRouter) {
+ this.isRedundantRouter = isRedundantRouter;
+ }
+
+ public String getTemplateVersion() {
+ return this.templateVersion;
+ }
+
+ public void setTemplateVersion(String templateVersion) {
+ this.templateVersion = templateVersion;
+ }
+
+ public String getScriptsVersion() {
+ return this.scriptsVersion;
+ }
+
+ public void setScriptsVersion(String scriptsVersion) {
+ this.scriptsVersion = scriptsVersion;
+ }
+ @Override
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ @Override
+ public void setProjectName(String projectName) {
+ this.projectName = projectName;
+ }
+
+ public void setVpcId(String vpcId) {
+ this.vpcId = vpcId;
+ }
+
+ public void setNics(Set<NicResponse> nics) {
+ this.nics = nics;
+ }
+
+ public void addNic(NicResponse nic) {
+ this.nics.add(nic);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/EventResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/EventResponse.java b/api/src/org/apache/cloudstack/api/response/EventResponse.java
new file mode 100644
index 0000000..641b586
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/EventResponse.java
@@ -0,0 +1,124 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.event.Event;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+@SuppressWarnings("unused")
+public class EventResponse extends BaseResponse implements ControlledViewEntityResponse{
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the event")
+ private String id;
+
+ @SerializedName(ApiConstants.USERNAME) @Param(description="the name of the user who performed the action (can be different from the account if an admin is performing an action for a user, e.g. starting/stopping a user's virtual machine)")
+ private String username;
+
+ @SerializedName(ApiConstants.TYPE) @Param(description="the type of the event (see event types)")
+ private String eventType;
+
+ @SerializedName(ApiConstants.LEVEL) @Param(description="the event level (INFO, WARN, ERROR)")
+ private String level;
+
+ @SerializedName(ApiConstants.DESCRIPTION) @Param(description="a brief description of the event")
+ private String description;
+
+ @SerializedName(ApiConstants.ACCOUNT) @Param(description="the account name for the account that owns the object being acted on in the event (e.g. the owner of the virtual machine, ip address, or security group)")
+ private String accountName;
+
+ @SerializedName(ApiConstants.PROJECT_ID) @Param(description="the project id of the ipaddress")
+ private String projectId;
+
+ @SerializedName(ApiConstants.PROJECT) @Param(description="the project name of the address")
+ private String projectName;
+
+ @SerializedName(ApiConstants.DOMAIN_ID) @Param(description="the id of the account's domain")
+ private String domainId;
+
+ @SerializedName(ApiConstants.DOMAIN) @Param(description="the name of the account's domain")
+ private String domainName;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="the date the event was created")
+ private Date created;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the event")
+ private Event.State state;
+
+ @SerializedName("parentid") @Param(description="whether the event is parented")
+ private String parentId;
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public void setEventType(String eventType) {
+ this.eventType = eventType;
+ }
+
+ public void setLevel(String level) {
+ this.level = level;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ @Override
+ public void setAccountName(String accountName) {
+ this.accountName = accountName;
+ }
+
+ @Override
+ public void setDomainId(String domainId) {
+ this.domainId = domainId;
+ }
+
+ @Override
+ public void setDomainName(String domainName) {
+ this.domainName = domainName;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ public void setState(Event.State state) {
+ this.state = state;
+ }
+
+ public void setParentId(String parentId) {
+ this.parentId = parentId;
+ }
+
+ @Override
+ public void setProjectId(String projectId) {
+ this.projectId = projectId;
+ }
+
+ @Override
+ public void setProjectName(String projectName) {
+ this.projectName = projectName;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/EventTypeResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/EventTypeResponse.java b/api/src/org/apache/cloudstack/api/response/EventTypeResponse.java
new file mode 100644
index 0000000..4dcc441
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/EventTypeResponse.java
@@ -0,0 +1,35 @@
+// 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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class EventTypeResponse extends BaseResponse {
+ @SerializedName(ApiConstants.NAME) @Param(description="Event Type")
+ private String name;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/ExceptionResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/ExceptionResponse.java b/api/src/org/apache/cloudstack/api/response/ExceptionResponse.java
new file mode 100644
index 0000000..a4050a2
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/ExceptionResponse.java
@@ -0,0 +1,73 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.ArrayList;
+
+import com.cloud.serializer.Param;
+import com.cloud.utils.IdentityProxy;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class ExceptionResponse extends BaseResponse {
+
+ @SerializedName("uuidList") @Param(description="List of uuids associated with this error")
+ private ArrayList<IdentityProxy> idList = new ArrayList<IdentityProxy>();
+
+ @SerializedName("errorcode") @Param(description="numeric code associated with this error")
+ private Integer errorCode;
+
+ @SerializedName("cserrorcode") @Param(description="cloudstack exception error code associated with this error")
+ private Integer csErrorCode;
+
+ @SerializedName("errortext") @Param(description="the text associated with this error")
+ private String errorText = "Command failed due to Internal Server Error";
+
+ public Integer getErrorCode() {
+ return errorCode;
+ }
+
+ public void setErrorCode(Integer errorCode) {
+ this.errorCode = errorCode;
+ }
+
+ public String getErrorText() {
+ return errorText;
+ }
+
+ public void setErrorText(String errorText) {
+ this.errorText = errorText;
+ }
+
+ public void addProxyObject(String tableName, Long id, String idFieldName) {
+ idList.add(new IdentityProxy(tableName, id, idFieldName));
+ return;
+ }
+
+ public ArrayList<IdentityProxy> getIdProxyList() {
+ return idList;
+ }
+
+ public void setCSErrorCode(int cserrcode) {
+ this.csErrorCode = cserrcode;
+ }
+
+ @Override
+ public String toString() {
+ return ("Error Code: " + errorCode + " Error text: " + errorText);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/ExtractResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/ExtractResponse.java b/api/src/org/apache/cloudstack/api/response/ExtractResponse.java
new file mode 100644
index 0000000..ac5cc3d
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/ExtractResponse.java
@@ -0,0 +1,208 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class ExtractResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the id of extracted object")
+ private IdentityProxy id = new IdentityProxy("vm_template");
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the extracted object")
+ private String name;
+
+ @SerializedName("extractId") @Param(description="the upload id of extracted object")
+ private IdentityProxy uploadId = new IdentityProxy("async_job");
+
+ @SerializedName("uploadpercentage") @Param(description="the percentage of the entity uploaded to the specified location")
+ private Integer uploadPercent;
+
+ @SerializedName("status") @Param(description="the status of the extraction")
+ private String status;
+
+ @SerializedName("accountid") @Param(description="the account id to which the extracted object belongs")
+ private IdentityProxy accountId = new IdentityProxy("account");
+
+ @SerializedName("resultstring") @Param(includeInApiDoc=false)
+ private String resultString;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="the time and date the object was created")
+ private Date createdDate;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the extracted object")
+ private String state;
+
+ @SerializedName("storagetype") @Param(description="type of the storage")
+ private String storageType;
+
+ @SerializedName("storage")
+ private String storage;
+
+ @SerializedName(ApiConstants.ZONE_ID) @Param(description="zone ID the object was extracted from")
+ private IdentityProxy zoneId = new IdentityProxy("data_center");
+
+ @SerializedName(ApiConstants.ZONE_NAME) @Param(description="zone name the object was extracted from")
+ private String zoneName;
+
+ @SerializedName("extractMode") @Param(description="the mode of extraction - upload or download")
+ private String mode;
+
+ @SerializedName(ApiConstants.URL) @Param(description="if mode = upload then url of the uploaded entity. if mode = download the url from which the entity can be downloaded")
+ private String url;
+
+ public ExtractResponse(){
+ }
+
+ public ExtractResponse(Long typeId, String typeName, long accountId,
+ String state, Long uploadId) {
+ this.id.setValue(typeId);
+ this.name = typeName;
+ this.accountId.setValue(accountId);
+ this.state = state;
+ this.uploadId.setValue(uploadId);
+ }
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(long id) {
+ this.id.setValue(id);
+ }
+
+ public void setIdentityTableName(String tableName) {
+ this.id.setTableName(tableName);
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Long getUploadId() {
+ return uploadId.getValue();
+ }
+
+ public void setUploadId(Long uploadId) {
+ this.uploadId.setValue(uploadId);
+ }
+
+ public Integer getUploadPercent() {
+ return uploadPercent;
+ }
+
+ public void setUploadPercent(int uploadPercent) {
+ this.uploadPercent = uploadPercent;
+ }
+
+ public String getUploadStatus() {
+ return status;
+ }
+
+ public void setUploadStatus(String status) {
+ this.status = status;
+ }
+
+ public Long getAccountId() {
+ return accountId.getValue();
+ }
+
+ public void setAccountId(long accountId) {
+ this.accountId.setValue(accountId);
+ }
+
+ public String getResultString() {
+ return resultString;
+ }
+
+ public void setResultString(String resultString) {
+ this.resultString = resultString;
+ }
+
+ public Date getCreatedDate() {
+ return createdDate;
+ }
+
+ public void setCreatedDate(Date createdDate) {
+ this.createdDate = createdDate;
+ }
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public String getStorageType() {
+ return storageType;
+ }
+
+ public void setStorageType(String storageType) {
+ this.storageType = storageType;
+ }
+
+ public String getStorage() {
+ return storage;
+ }
+
+ public void setStorage(String storage) {
+ this.storage = storage;
+ }
+
+ public Long getZoneId() {
+ return zoneId.getValue();
+ }
+
+ public void setZoneId(Long zoneId) {
+ this.zoneId.setValue(zoneId);
+ }
+
+ public String getZoneName() {
+ return zoneName;
+ }
+
+ public void setZoneName(String zoneName) {
+ this.zoneName = zoneName;
+ }
+
+ public String getMode() {
+ return mode;
+ }
+
+ public void setMode(String mode) {
+ this.mode = mode;
+ }
+
+ public String getUrl() {
+ return url;
+ }
+
+ public void setUrl(String url) {
+ this.url = url;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/FirewallResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/FirewallResponse.java b/api/src/org/apache/cloudstack/api/response/FirewallResponse.java
new file mode 100644
index 0000000..eb5ba89
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/FirewallResponse.java
@@ -0,0 +1,105 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.List;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.cloud.utils.IdentityProxy;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+@SuppressWarnings("unused")
+public class FirewallResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the firewall rule")
+ private IdentityProxy id = new IdentityProxy("firewall_rules");
+
+ @SerializedName(ApiConstants.PROTOCOL) @Param(description="the protocol of the firewall rule")
+ private String protocol;
+
+ @SerializedName(ApiConstants.START_PORT) @Param(description="the starting port of firewall rule's port range")
+ private String startPort;
+
+ @SerializedName(ApiConstants.END_PORT) @Param(description = "the ending port of firewall rule's port range")
+ private String endPort;
+
+ @SerializedName(ApiConstants.IP_ADDRESS_ID) @Param(description="the public ip address id for the firewall rule")
+ private Long publicIpAddressId;
+
+ @SerializedName(ApiConstants.IP_ADDRESS) @Param(description="the public ip address for the firewall rule")
+ private String publicIpAddress;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the rule")
+ private String state;
+
+ @SerializedName(ApiConstants.CIDR_LIST) @Param(description="the cidr list to forward traffic from")
+ private String cidrList;
+
+ @SerializedName(ApiConstants.ICMP_TYPE) @Param(description= "type of the icmp message being sent")
+ private Integer icmpType;
+
+ @SerializedName(ApiConstants.ICMP_CODE) @Param(description = "error code for this icmp message")
+ private Integer icmpCode;
+
+ @SerializedName(ApiConstants.TAGS) @Param(description="the list of resource tags associated with the rule", responseObject = ResourceTagResponse.class)
+ private List<ResourceTagResponse> tags;
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public void setProtocol(String protocol) {
+ this.protocol = protocol;
+ }
+
+ public void setStartPort(String startPort) {
+ this.startPort = startPort;
+ }
+
+ public void setEndPort(String endPort) {
+ this.endPort = endPort;
+ }
+
+ public void setPublicIpAddressId(Long publicIpAddressId) {
+ this.publicIpAddressId = publicIpAddressId;
+ }
+
+ public void setPublicIpAddress(String publicIpAddress) {
+ this.publicIpAddress = publicIpAddress;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public void setCidrList(String cidrList) {
+ this.cidrList = cidrList;
+ }
+
+ public void setIcmpType(Integer icmpType) {
+ this.icmpType = icmpType;
+ }
+
+ public void setIcmpCode(Integer icmpCode) {
+ this.icmpCode = icmpCode;
+ }
+
+ public void setTags(List<ResourceTagResponse> tags) {
+ this.tags = tags;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java b/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java
new file mode 100644
index 0000000..718fb96
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java
@@ -0,0 +1,178 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.List;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.cloud.utils.IdentityProxy;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+@SuppressWarnings("unused")
+public class FirewallRuleResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the port forwarding rule")
+ private IdentityProxy id = new IdentityProxy("firewall_rules");
+
+ @SerializedName(ApiConstants.PRIVATE_START_PORT) @Param(description = "the starting port of port forwarding rule's private port range")
+ private String privateStartPort;
+
+ @SerializedName(ApiConstants.PRIVATE_END_PORT) @Param(description = "the ending port of port forwarding rule's private port range")
+ private String privateEndPort;
+
+ @SerializedName(ApiConstants.PROTOCOL) @Param(description="the protocol of the port forwarding rule")
+ private String protocol;
+
+ @SerializedName(ApiConstants.PUBLIC_START_PORT) @Param(description="the starting port of port forwarding rule's public port range")
+ private String publicStartPort;
+
+ @SerializedName(ApiConstants.PUBLIC_END_PORT) @Param(description = "the ending port of port forwarding rule's private port range")
+ private String publicEndPort;
+
+ @SerializedName(ApiConstants.VIRTUAL_MACHINE_ID) @Param(description="the VM ID for the port forwarding rule")
+ private IdentityProxy virtualMachineId = new IdentityProxy("vm_instance");
+
+ @SerializedName("virtualmachinename") @Param(description="the VM name for the port forwarding rule")
+ private String virtualMachineName;
+
+ @SerializedName("virtualmachinedisplayname") @Param(description="the VM display name for the port forwarding rule")
+ private String virtualMachineDisplayName;
+
+ @SerializedName(ApiConstants.IP_ADDRESS_ID) @Param(description="the public ip address id for the port forwarding rule")
+ private IdentityProxy publicIpAddressId = new IdentityProxy("user_ip_address");
+
+ @SerializedName(ApiConstants.IP_ADDRESS) @Param(description="the public ip address for the port forwarding rule")
+ private String publicIpAddress;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the rule")
+ private String state;
+
+ @SerializedName(ApiConstants.CIDR_LIST) @Param(description="the cidr list to forward traffic from")
+ private String cidrList;
+
+ @SerializedName(ApiConstants.TAGS) @Param(description="the list of resource tags associated with the rule", responseObject = ResourceTagResponse.class)
+ private List<ResourceTagResponse> tags;
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public String getPrivateStartPort() {
+ return privateStartPort;
+ }
+
+ public String getPrivateEndPort() {
+ return privateEndPort;
+ }
+
+ public void setPrivateStartPort(String privatePort) {
+ this.privateStartPort = privatePort;
+ }
+
+ public void setPrivateEndPort(String privatePort) {
+ this.privateEndPort = privatePort;
+ }
+
+ public String getProtocol() {
+ return protocol;
+ }
+
+ public void setProtocol(String protocol) {
+ this.protocol = protocol;
+ }
+
+ public String getPublicStartPort() {
+ return publicStartPort;
+ }
+
+ public String getPublicEndPort() {
+ return publicEndPort;
+ }
+
+ public void setPublicStartPort(String publicPort) {
+ this.publicStartPort = publicPort;
+ }
+
+ public void setPublicEndPort(String publicPort) {
+ this.publicEndPort = publicPort;
+ }
+
+ public Long getVirtualMachineId() {
+ return virtualMachineId.getValue();
+ }
+
+ public void setVirtualMachineId(Long virtualMachineId) {
+ this.virtualMachineId.setValue(virtualMachineId);
+ }
+
+ public String getVirtualMachineName() {
+ return virtualMachineName;
+ }
+
+ public void setVirtualMachineName(String virtualMachineName) {
+ this.virtualMachineName = virtualMachineName;
+ }
+
+ public String getVirtualMachineDisplayName() {
+ return virtualMachineDisplayName;
+ }
+
+ public void setVirtualMachineDisplayName(String virtualMachineDisplayName) {
+ this.virtualMachineDisplayName = virtualMachineDisplayName;
+ }
+
+ public String getPublicIpAddress() {
+ return publicIpAddress;
+ }
+
+ public void setPublicIpAddress(String publicIpAddress) {
+ this.publicIpAddress = publicIpAddress;
+ }
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ public Long getPublicIpAddressId() {
+ return publicIpAddressId.getValue();
+ }
+
+ public void setPublicIpAddressId(Long publicIpAddressId) {
+ this.publicIpAddressId.setValue(publicIpAddressId);
+ }
+
+ public String getCidrList() {
+ return cidrList;
+ }
+
+ public void setCidrList(String cidrs) {
+ this.cidrList = cidrs;
+ }
+
+ public void setTags(List<ResourceTagResponse> tags) {
+ this.tags = tags;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/GetVMPasswordResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/GetVMPasswordResponse.java b/api/src/org/apache/cloudstack/api/response/GetVMPasswordResponse.java
new file mode 100644
index 0000000..8147df3
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/GetVMPasswordResponse.java
@@ -0,0 +1,44 @@
+// 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.apache.cloudstack.api.response;
+
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class GetVMPasswordResponse extends BaseResponse {
+
+ @SerializedName("encryptedpassword") @Param(description="The encrypted password of the VM")
+ private String encryptedPassword;
+
+ public GetVMPasswordResponse() {}
+
+ public GetVMPasswordResponse(String responseName, String encryptedPassword) {
+ setResponseName(responseName);
+ setObjectName("password");
+ setEncryptedPassword(encryptedPassword);
+ }
+
+ public String getEncryptedPassword() {
+ return encryptedPassword;
+ }
+
+ public void setEncryptedPassword(String encryptedPassword) {
+ this.encryptedPassword = encryptedPassword;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.java b/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.java
new file mode 100644
index 0000000..a271686
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class GuestOSCategoryResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the OS category")
+ private IdentityProxy id = new IdentityProxy("guest_os_category");
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the OS category")
+ private String name;
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java b/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java
new file mode 100644
index 0000000..6c15480
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java
@@ -0,0 +1,58 @@
+// 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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class GuestOSResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the OS type")
+ private IdentityProxy id = new IdentityProxy("guest_os");
+
+ @SerializedName(ApiConstants.OS_CATEGORY_ID) @Param(description="the ID of the OS category")
+ private IdentityProxy osCategoryId = new IdentityProxy("guest_os_category");
+
+ @SerializedName(ApiConstants.DESCRIPTION) @Param(description="the name/description of the OS type")
+ private String description;
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public Long getOsCategoryId() {
+ return osCategoryId.getValue();
+ }
+
+ public void setOsCategoryId(Long osCategoryId) {
+ this.osCategoryId.setValue(osCategoryId);
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/HostResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/HostResponse.java b/api/src/org/apache/cloudstack/api/response/HostResponse.java
new file mode 100644
index 0000000..8b4cd3e
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/HostResponse.java
@@ -0,0 +1,370 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.host.Host;
+import com.cloud.host.Status;
+import com.cloud.hypervisor.Hypervisor.HypervisorType;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class HostResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the host")
+ private IdentityProxy id = new IdentityProxy("host");
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the host")
+ private String name;
+
+ @SerializedName(ApiConstants.STATE) @Param(description="the state of the host")
+ private Status state;
+
+ @SerializedName("disconnected") @Param(description="true if the host is disconnected. False otherwise.")
+ private Date disconnectedOn;
+
+ @SerializedName(ApiConstants.TYPE) @Param(description="the host type")
+ private Host.Type hostType;
+
+ @SerializedName("oscategoryid") @Param(description="the OS category ID of the host")
+ private IdentityProxy osCategoryId = new IdentityProxy("guest_os_category");
+
+ @SerializedName("oscategoryname") @Param(description="the OS category name of the host")
+ private String osCategoryName;
+
+ @SerializedName(ApiConstants.IP_ADDRESS) @Param(description="the IP address of the host")
+ private String ipAddress;
+
+ @SerializedName(ApiConstants.ZONE_ID) @Param(description="the Zone ID of the host")
+ private IdentityProxy zoneId = new IdentityProxy("data_center");
+
+ @SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the host")
+ private String zoneName;
+
+ @SerializedName(ApiConstants.POD_ID) @Param(description="the Pod ID of the host")
+ private IdentityProxy podId = new IdentityProxy("host_pod_ref");
+
+ @SerializedName("podname") @Param(description="the Pod name of the host")
+ private String podName;
+
+ @SerializedName("version") @Param(description="the host version")
+ private String version;
+
+ @SerializedName(ApiConstants.HYPERVISOR) @Param(description="the host hypervisor")
+ private HypervisorType hypervisor;
+
+ @SerializedName("cpunumber") @Param(description="the CPU number of the host")
+ private Integer cpuNumber;
+
+ @SerializedName("cpuspeed") @Param(description="the CPU speed of the host")
+ private Long cpuSpeed;
+
+ @SerializedName("cpuallocated") @Param(description="the amount of the host's CPU currently allocated")
+ private String cpuAllocated;
+
+ @SerializedName("cpuused") @Param(description="the amount of the host's CPU currently used")
+ private String cpuUsed;
+
+ @SerializedName("cpuwithoverprovisioning") @Param(description="the amount of the host's CPU after applying the cpu.overprovisioning.factor ")
+ private String cpuWithOverprovisioning;
+
+ @SerializedName("averageload") @Param(description="the cpu average load on the host")
+ private Long averageLoad;
+
+ @SerializedName("networkkbsread") @Param(description="the incoming network traffic on the host")
+ private Long networkKbsRead;
+
+ @SerializedName("networkkbswrite") @Param(description="the outgoing network traffic on the host")
+ private Long networkKbsWrite;
+
+ @SerializedName("memorytotal") @Param(description="the memory total of the host")
+ private Long memoryTotal;
+
+ @SerializedName("memoryallocated") @Param(description="the amount of the host's memory currently allocated")
+ private Long memoryAllocated;
+
+ @SerializedName("memoryused") @Param(description="the amount of the host's memory currently used")
+ private Long memoryUsed;
+
+ @SerializedName("disksizetotal") @Param(description="the total disk size of the host")
+ private Long diskSizeTotal;
+
+ @SerializedName("disksizeallocated") @Param(description="the host's currently allocated disk size")
+ private Long diskSizeAllocated;
+
+ @SerializedName("capabilities") @Param(description="capabilities of the host")
+ private String capabilities;
+
+ @SerializedName("lastpinged") @Param(description="the date and time the host was last pinged")
+ private Date lastPinged;
+
+ @SerializedName("managementserverid") @Param(description="the management server ID of the host")
+ private Long managementServerId;
+
+ @SerializedName("clusterid") @Param(description="the cluster ID of the host")
+ private IdentityProxy clusterId = new IdentityProxy("cluster");
+
+ @SerializedName("clustername") @Param(description="the cluster name of the host")
+ private String clusterName;
+
+ @SerializedName("clustertype") @Param(description="the cluster type of the cluster that host belongs to")
+ private String clusterType;
+
+ @SerializedName("islocalstorageactive") @Param(description="true if local storage is active, false otherwise")
+ private Boolean localStorageActive;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="the date and time the host was created")
+ private Date created;
+
+ @SerializedName("removed") @Param(description="the date and time the host was removed")
+ private Date removed;
+
+ @SerializedName("events") @Param(description="events available for the host")
+ private String events;
+
+ @SerializedName("hosttags") @Param(description="comma-separated list of tags for the host")
+ private String hostTags;
+
+ @SerializedName("hasenoughcapacity") @Param(description="true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise")
+ private Boolean hasEnoughCapacity;
+
+ @SerializedName("suitableformigration") @Param(description="true if this host is suitable(has enough capacity and satisfies all conditions like hosttags, max guests vm limit etc) to migrate a VM to it , false otherwise")
+ private Boolean suitableForMigration;
+
+ @SerializedName("resourcestate") @Param(description="the resource state of the host")
+ private String resourceState;
+
+ @SerializedName(ApiConstants.HYPERVISOR_VERSION) @Param(description="the hypervisor version")
+ private String hypervisorVersion;
+
+ @SerializedName(ApiConstants.HA_HOST) @Param(description="true if the host is Ha host (dedicated to vms started by HA process; false otherwise")
+ private Boolean haHost;
+
+
+ @Override
+ public Long getObjectId() {
+ return getId();
+ }
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setState(Status state) {
+ this.state = state;
+ }
+
+ public void setDisconnectedOn(Date disconnectedOn) {
+ this.disconnectedOn = disconnectedOn;
+ }
+
+ public void setHostType(Host.Type hostType) {
+ this.hostType = hostType;
+ }
+
+ public void setOsCategoryId(Long osCategoryId) {
+ this.osCategoryId.setValue(osCategoryId);
+ }
+
+ public void setOsCategoryName(String osCategoryName) {
+ this.osCategoryName = osCategoryName;
+ }
+
+ public void setIpAddress(String ipAddress) {
+ this.ipAddress = ipAddress;
+ }
+
+ public void setZoneId(Long zoneId) {
+ this.zoneId.setValue(zoneId);
+ }
+
+ public void setZoneName(String zoneName) {
+ this.zoneName = zoneName;
+ }
+
+ public void setPodId(Long podId) {
+ this.podId.setValue(podId);
+ }
+
+ public void setPodName(String podName) {
+ this.podName = podName;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ public void setHypervisor(HypervisorType hypervisor) {
+ this.hypervisor = hypervisor;
+ }
+
+ public void setCpuNumber(Integer cpuNumber) {
+ this.cpuNumber = cpuNumber;
+ }
+
+ public void setCpuSpeed(Long cpuSpeed) {
+ this.cpuSpeed = cpuSpeed;
+ }
+
+ public String getCpuAllocated() {
+ return cpuAllocated;
+ }
+
+ public void setCpuAllocated(String cpuAllocated) {
+ this.cpuAllocated = cpuAllocated;
+ }
+
+ public void setCpuUsed(String cpuUsed) {
+ this.cpuUsed = cpuUsed;
+ }
+
+ public void setAverageLoad(Long averageLoad) {
+ this.averageLoad = averageLoad;
+ }
+
+ public void setNetworkKbsRead(Long networkKbsRead) {
+ this.networkKbsRead = networkKbsRead;
+ }
+
+ public void setNetworkKbsWrite(Long networkKbsWrite) {
+ this.networkKbsWrite = networkKbsWrite;
+ }
+
+ public void setMemoryTotal(Long memoryTotal) {
+ this.memoryTotal = memoryTotal;
+ }
+
+ public void setMemoryAllocated(Long memoryAllocated) {
+ this.memoryAllocated = memoryAllocated;
+ }
+
+ public void setMemoryUsed(Long memoryUsed) {
+ this.memoryUsed = memoryUsed;
+ }
+
+ public void setDiskSizeTotal(Long diskSizeTotal) {
+ this.diskSizeTotal = diskSizeTotal;
+ }
+
+ public void setDiskSizeAllocated(Long diskSizeAllocated) {
+ this.diskSizeAllocated = diskSizeAllocated;
+ }
+
+ public void setCapabilities(String capabilities) {
+ this.capabilities = capabilities;
+ }
+
+ public void setLastPinged(Date lastPinged) {
+ this.lastPinged = lastPinged;
+ }
+
+ public void setManagementServerId(Long managementServerId) {
+ this.managementServerId = managementServerId;
+ }
+
+ public void setClusterId(Long clusterId) {
+ this.clusterId.setValue(clusterId);
+ }
+
+ public void setClusterName(String clusterName) {
+ this.clusterName = clusterName;
+ }
+
+ public void setClusterType(String clusterType) {
+ this.clusterType = clusterType;
+ }
+
+ public void setLocalStorageActive(Boolean localStorageActive) {
+ this.localStorageActive = localStorageActive;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ public void setRemoved(Date removed) {
+ this.removed = removed;
+ }
+
+ public void setEvents(String events) {
+ this.events = events;
+ }
+
+ public void setHostTags(String hostTags) {
+ this.hostTags = hostTags;
+ }
+
+ public void setHasEnoughCapacity(Boolean hasEnoughCapacity) {
+ this.hasEnoughCapacity = hasEnoughCapacity;
+ }
+
+
+ public void setSuitableForMigration(Boolean suitableForMigration) {
+ this.suitableForMigration = suitableForMigration;
+ }
+
+ public String getResourceState() {
+ return resourceState;
+ }
+
+ public void setResourceState(String resourceState) {
+ this.resourceState = resourceState;
+ }
+
+ public String getCpuWithOverprovisioning() {
+ return cpuWithOverprovisioning;
+ }
+
+ public void setCpuWithOverprovisioning(String cpuWithOverprovisioning) {
+ this.cpuWithOverprovisioning = cpuWithOverprovisioning;
+ }
+
+ public void setHypervisorVersion(String hypervisorVersion) {
+ this.hypervisorVersion = hypervisorVersion;
+ }
+
+ public void setOsCategoryId(IdentityProxy osCategoryId) {
+ this.osCategoryId = osCategoryId;
+ }
+
+ public void setZoneId(IdentityProxy zoneId) {
+ this.zoneId = zoneId;
+ }
+
+ public void setPodId(IdentityProxy podId) {
+ this.podId = podId;
+ }
+
+ public void setClusterId(IdentityProxy clusterId) {
+ this.clusterId = clusterId;
+ }
+
+ public void setHaHost(Boolean haHost) {
+ this.haHost = haHost;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/HypervisorCapabilitiesResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/HypervisorCapabilitiesResponse.java b/api/src/org/apache/cloudstack/api/response/HypervisorCapabilitiesResponse.java
new file mode 100644
index 0000000..a4abb93
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/HypervisorCapabilitiesResponse.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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.hypervisor.Hypervisor.HypervisorType;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class HypervisorCapabilitiesResponse extends BaseResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="the ID of the hypervisor capabilities row")
+ private IdentityProxy id = new IdentityProxy("hypervisor_capabilities");
+
+ @SerializedName(ApiConstants.HYPERVISOR_VERSION) @Param(description="the hypervisor version")
+ private String hypervisorVersion;
+
+ @SerializedName(ApiConstants.HYPERVISOR) @Param(description="the hypervisor type")
+ private HypervisorType hypervisor;
+
+ @SerializedName(ApiConstants.MAX_GUESTS_LIMIT) @Param(description="the maximum number of guest vms recommended for this hypervisor")
+ private Long maxGuestsLimit;
+
+ @SerializedName(ApiConstants.SECURITY_GROUP_EANBLED) @Param(description="true if security group is supported")
+ private boolean isSecurityGroupEnabled;
+
+ @Override
+ public Long getObjectId() {
+ return getId();
+ }
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+
+ public String getHypervisorVersion() {
+ return hypervisorVersion;
+ }
+
+ public void setHypervisorVersion(String hypervisorVersion) {
+ this.hypervisorVersion = hypervisorVersion;
+ }
+
+ public HypervisorType getHypervisor() {
+ return hypervisor;
+ }
+
+ public void setHypervisor(HypervisorType hypervisor) {
+ this.hypervisor = hypervisor;
+ }
+
+ public Long getMaxGuestsLimit() {
+ return maxGuestsLimit;
+ }
+
+ public void setMaxGuestsLimit(Long maxGuestsLimit) {
+ this.maxGuestsLimit = maxGuestsLimit;
+ }
+
+ public Boolean getIsSecurityGroupEnabled() {
+ return this.isSecurityGroupEnabled;
+ }
+
+ public void setIsSecurityGroupEnabled(Boolean sgEnabled) {
+ this.isSecurityGroupEnabled = sgEnabled;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/HypervisorResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/HypervisorResponse.java b/api/src/org/apache/cloudstack/api/response/HypervisorResponse.java
new file mode 100644
index 0000000..3828539
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/HypervisorResponse.java
@@ -0,0 +1,35 @@
+// 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.apache.cloudstack.api.response;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+public class HypervisorResponse extends BaseResponse {
+ @SerializedName(ApiConstants.NAME) @Param(description="Hypervisor name")
+ private String name;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/IPAddressResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/IPAddressResponse.java b/api/src/org/apache/cloudstack/api/response/IPAddressResponse.java
new file mode 100644
index 0000000..15ac72d
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/IPAddressResponse.java
@@ -0,0 +1,238 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+import java.util.List;
+
+import org.apache.cloudstack.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.cloud.utils.IdentityProxy;
+import com.google.gson.annotations.SerializedName;
+import org.apache.cloudstack.api.BaseResponse;
+
+@SuppressWarnings("unused")
+public class IPAddressResponse extends BaseResponse implements ControlledEntityResponse {
+ @SerializedName(ApiConstants.ID) @Param(description="public IP address id")
+ private IdentityProxy id = new IdentityProxy("user_ip_address");
+
+ @SerializedName(ApiConstants.IP_ADDRESS) @Param(description="public IP address")
+ private String ipAddress;
+
+ @SerializedName("allocated") @Param(description="date the public IP address was acquired")
+ private Date allocated;
+
+ @SerializedName(ApiConstants.ZONE_ID) @Param(description="the ID of the zone the public IP address belongs to")
+ private IdentityProxy zoneId = new IdentityProxy("data_center");
+
+ @SerializedName(ApiConstants.ZONE_NAME) @Param(description="the name of the zone the public IP address belongs to")
+ private String zoneName;
+
+ @SerializedName("issourcenat") @Param(description="true if the IP address is a source nat address, false otherwise")
+ private Boolean sourceNat;
+
+ @SerializedName(ApiConstants.ACCOUNT) @Param(description="the account the public IP address is associated with")
+ private String accountName;
+
+ @SerializedName(ApiConstants.PROJECT_ID) @Param(description="the project id of the ipaddress")
+ private IdentityProxy projectId = new IdentityProxy("projects");
+
+ @SerializedName(ApiConstants.PROJECT) @Param(description="the project name of the address")
+ private String projectName;
+
+ @SerializedName(ApiConstants.DOMAIN_ID) @Param(description="the domain ID the public IP address is associated with")
+ private IdentityProxy domainId = new IdentityProxy("domain");
+
+ @SerializedName(ApiConstants.DOMAIN) @Param(description="the domain the public IP address is associated with")
+ private String domainName;
+
+ @SerializedName(ApiConstants.FOR_VIRTUAL_NETWORK) @Param(description="the virtual network for the IP address")
+ private Boolean forVirtualNetwork;
+
+ @SerializedName(ApiConstants.VLAN_ID) @Param(description="the ID of the VLAN associated with the IP address." +
+ " This parameter is visible to ROOT admins only")
+ private IdentityProxy vlanId = new IdentityProxy("vlan");
+
+ @SerializedName("vlanname") @Param(description="the VLAN associated with the IP address")
+ private String vlanName;
+
+ @SerializedName("isstaticnat") @Param(description="true if this ip is for static nat, false otherwise")
+ private Boolean staticNat;
+
+ @SerializedName(ApiConstants.IS_SYSTEM) @Param(description="true if this ip is system ip (was allocated as a part of deployVm or createLbRule)")
+ private Boolean isSystem;
+
+ @SerializedName(ApiConstants.VIRTUAL_MACHINE_ID) @Param(description="virutal machine id the ip address is assigned to (not null only for static nat Ip)")
+ private IdentityProxy virtualMachineId = new IdentityProxy("vm_instance");
+
+ @SerializedName("virtualmachinename") @Param(description="virutal machine name the ip address is assigned to (not null only for static nat Ip)")
+ private String virtualMachineName;
+
+ @SerializedName("virtualmachinedisplayname") @Param(description="virutal machine display name the ip address is assigned to (not null only for static nat Ip)")
+ private String virtualMachineDisplayName;
+
+ @SerializedName(ApiConstants.ASSOCIATED_NETWORK_ID) @Param(description="the ID of the Network associated with the IP address")
+ private IdentityProxy associatedNetworkId = new IdentityProxy("networks");
+
+ @SerializedName(ApiConstants.ASSOCIATED_NETWORK_NAME) @Param(description="the name of the Network associated with the IP address")
+ private String associatedNetworkName;
+
+ @SerializedName(ApiConstants.NETWORK_ID) @Param(description="the ID of the Network where ip belongs to")
+ private IdentityProxy networkId = new IdentityProxy("networks");
+
+ @SerializedName(ApiConstants.STATE) @Param(description="State of the ip address. Can be: Allocatin, Allocated and Releasing")
+ private String state;
+
+ @SerializedName(ApiConstants.PHYSICAL_NETWORK_ID) @Param(description="the physical network this belongs to")
+ private IdentityProxy physicalNetworkId = new IdentityProxy("physical_network");
+
+ @SerializedName(ApiConstants.PURPOSE) @Param(description="purpose of the IP address. In Acton this value is not null for Ips with isSystem=true, and can have either StaticNat or LB value")
+ private String purpose;
+
+ @SerializedName(ApiConstants.VPC_ID) @Param(description="VPC the ip belongs to")
+ private IdentityProxy vpcId = new IdentityProxy("vpc");
+ @SerializedName(ApiConstants.TAGS) @Param(description="the list of resource tags associated with ip address", responseObject = ResourceTagResponse.class)
+ private List<ResourceTagResponse> tags;
+
+/*
+ @SerializedName(ApiConstants.JOB_ID) @Param(description="shows the current pending asynchronous job ID. This tag is not returned if no current pending jobs are acting on the volume")
+ private IdentityProxy jobId = new IdentityProxy("async_job");
+*/
+
+
+ public void setIpAddress(String ipAddress) {
+ this.ipAddress = ipAddress;
+ }
+
+ public void setAllocated(Date allocated) {
+ this.allocated = allocated;
+ }
+
+ public void setZoneId(Long zoneId) {
+ this.zoneId.setValue(zoneId);
+ }
+
+ public void setZoneName(String zoneName) {
+ this.zoneName = zoneName;
+ }
+
+ public void setSourceNat(Boolean sourceNat) {
+ this.sourceNat = sourceNat;
+ }
+
+ @Override
+ public void setAccountName(String accountName) {
+ this.accountName = accountName;
+ }
+
+ @Override
+ public void setDomainId(Long domainId) {
+ this.domainId.setValue(domainId);
+ }
+
+ @Override
+ public void setDomainName(String domainName) {
+ this.domainName = domainName;
+ }
+
+ public void setForVirtualNetwork(Boolean forVirtualNetwork) {
+ this.forVirtualNetwork = forVirtualNetwork;
+ }
+
+ public void setVlanId(Long vlanId) {
+ this.vlanId.setValue(vlanId);
+ }
+
+ public void setVlanName(String vlanName) {
+ this.vlanName = vlanName;
+ }
+
+ public void setStaticNat(Boolean staticNat) {
+ this.staticNat = staticNat;
+ }
+
+ public void setAssociatedNetworkId(Long networkId) {
+ this.associatedNetworkId.setValue(networkId);
+ }
+
+ public void setNetworkId(Long networkId) {
+ this.networkId.setValue(networkId);
+ }
+
+ public void setVirtualMachineId(Long virtualMachineId) {
+ this.virtualMachineId.setValue(virtualMachineId);
+ }
+
+ public void setVirtualMachineName(String virtualMachineName) {
+ this.virtualMachineName = virtualMachineName;
+ }
+
+ public void setVirtualMachineDisplayName(String virtualMachineDisplayName) {
+ this.virtualMachineDisplayName = virtualMachineDisplayName;
+ }
+
+ public Long getId() {
+ return id.getValue();
+ }
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ @Override
+ public Long getObjectId() {
+ return getId();
+ }
+
+ @Override
+ public void setProjectId(Long projectId) {
+ this.projectId.setValue(projectId);
+ }
+
+ @Override
+ public void setProjectName(String projectName) {
+ this.projectName = projectName;
+ }
+
+ public void setPhysicalNetworkId(long physicalNetworkId) {
+ this.physicalNetworkId.setValue(physicalNetworkId);
+ }
+
+ public void setIsSystem(Boolean isSystem) {
+ this.isSystem = isSystem;
+ }
+
+ public void setPurpose(String purpose) {
+ this.purpose = purpose;
+ }
+
+ public void setVpcId(Long vpcId) {
+ this.vpcId.setValue(vpcId);
+ }
+
+ public void setTags(List<ResourceTagResponse> tags) {
+ this.tags = tags;
+ }
+
+ public void setAssociatedNetworkName(String associatedNetworkName) {
+ this.associatedNetworkName = associatedNetworkName;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e398b1e4/api/src/org/apache/cloudstack/api/response/InstanceGroupResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/InstanceGroupResponse.java b/api/src/org/apache/cloudstack/api/response/InstanceGroupResponse.java
new file mode 100644
index 0000000..ec92397
--- /dev/null
+++ b/api/src/org/apache/cloudstack/api/response/InstanceGroupResponse.java
@@ -0,0 +1,92 @@
+// 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.apache.cloudstack.api.response;
+
+import java.util.Date;
+
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
+import com.cloud.vm.InstanceGroup;
+import com.cloud.utils.IdentityProxy;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+
+@SuppressWarnings("unused")
+@Entity(value = InstanceGroup.class)
+public class InstanceGroupResponse extends BaseResponse implements ControlledEntityResponse{
+ @SerializedName(ApiConstants.ID) @Param(description="the id of the instance group")
+ private IdentityProxy id = new IdentityProxy("instance_group");
+
+ @SerializedName(ApiConstants.NAME) @Param(description="the name of the instance group")
+ private String name;
+
+ @SerializedName(ApiConstants.CREATED) @Param(description="time and date the instance group was created")
+ private Date created;
+
+ @SerializedName(ApiConstants.ACCOUNT) @Param(description="the account owning the instance group")
+ private String accountName;
+
+ @SerializedName(ApiConstants.PROJECT_ID) @Param(description="the project id of the group")
+ private IdentityProxy projectId = new IdentityProxy("projects");
+
+ @SerializedName(ApiConstants.PROJECT) @Param(description="the project name of the group")
+ private String projectName;
+
+ @SerializedName(ApiConstants.DOMAIN_ID) @Param(description="the domain ID of the instance group")
+ private IdentityProxy domainId = new IdentityProxy("domain");
+
+ @SerializedName(ApiConstants.DOMAIN) @Param(description="the domain name of the instance group")
+ private String domainName;
+
+ public void setId(Long id) {
+ this.id.setValue(id);
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setCreated(Date created) {
+ this.created = created;
+ }
+
+ @Override
+ public void setAccountName(String accountName) {
+ this.accountName = accountName;
+ }
+
+ @Override
+ public void setDomainId(Long domainId) {
+ this.domainId.setValue(domainId);
+ }
+
+ @Override
+ public void setDomainName(String domainName) {
+ this.domainName = domainName;
+ }
+
+ @Override
+ public void setProjectId(Long projectId) {
+ this.projectId.setValue(projectId);
+ }
+
+ @Override
+ public void setProjectName(String projectName) {
+ this.projectName = projectName;
+ }
+}