Updated Branches:
  refs/heads/api_refactoring 575fab971 -> af5eacfc0

api: Annotate autoscale apis

Signed-off-by: Rohit Yadav <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/af5eacfc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/af5eacfc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/af5eacfc

Branch: refs/heads/api_refactoring
Commit: af5eacfc014621cb78ddea022589b4d9bc2bf0ee
Parents: 575fab9
Author: Rohit Yadav <[email protected]>
Authored: Sat Dec 22 20:28:19 2012 -0800
Committer: Rohit Yadav <[email protected]>
Committed: Sat Dec 22 20:28:19 2012 -0800

----------------------------------------------------------------------
 .../user/autoscale/CreateAutoScalePolicyCmd.java   |    6 ++--
 .../user/autoscale/CreateAutoScaleVmGroupCmd.java  |   20 ++++++-----
 .../autoscale/CreateAutoScaleVmProfileCmd.java     |   21 +++++++-----
 .../command/user/autoscale/CreateConditionCmd.java |   11 +++---
 .../user/autoscale/DeleteAutoScalePolicyCmd.java   |    6 ++--
 .../user/autoscale/DeleteAutoScaleVmGroupCmd.java  |    6 ++--
 .../autoscale/DeleteAutoScaleVmProfileCmd.java     |    6 ++--
 .../command/user/autoscale/DeleteConditionCmd.java |    6 ++--
 .../user/autoscale/DisableAutoScaleVmGroupCmd.java |    5 +--
 .../user/autoscale/EnableAutoScaleVmGroupCmd.java  |    5 +--
 .../user/autoscale/ListAutoScalePoliciesCmd.java   |   15 +++++----
 .../user/autoscale/ListAutoScaleVmGroupsCmd.java   |   25 ++++++++------
 .../user/autoscale/ListAutoScaleVmProfilesCmd.java |   10 +++---
 .../command/user/autoscale/ListConditionsCmd.java  |   14 ++++----
 .../command/user/autoscale/ListCountersCmd.java    |    5 +--
 .../user/autoscale/UpdateAutoScalePolicyCmd.java   |   10 +++---
 .../user/autoscale/UpdateAutoScaleVmGroupCmd.java  |   14 ++++----
 .../autoscale/UpdateAutoScaleVmProfileCmd.java     |   15 +++++----
 .../api/response/AutoScalePolicyResponse.java      |    3 ++
 .../api/response/AutoScaleVmGroupResponse.java     |    3 ++
 .../api/response/AutoScaleVmProfileResponse.java   |    3 ++
 .../cloudstack/api/response/ConditionResponse.java |    3 ++
 .../api/response/FirewallRuleResponse.java         |    3 ++
 23 files changed, 119 insertions(+), 96 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScalePolicyCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScalePolicyCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScalePolicyCmd.java
index 47549ab..48e06b9 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScalePolicyCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScalePolicyCmd.java
@@ -18,12 +18,12 @@ package org.apache.cloudstack.api.command.user.autoscale;
 
 import java.util.List;
 
+import org.apache.cloudstack.api.response.ConditionResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCreateCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -55,8 +55,8 @@ public class CreateAutoScalePolicyCmd extends 
BaseAsyncCreateCmd {
     @Parameter(name = ApiConstants.QUIETTIME, type = CommandType.INTEGER, 
description = "the cool down period for which the policy should not be 
evaluated after the action has been taken")
     private Integer quietTime;
 
-    @IdentityMapper(entityTableName = "conditions")
-    @Parameter(name = ApiConstants.CONDITION_IDS, type = CommandType.LIST, 
collectionType = CommandType.LONG, required = true, description = "the list of 
IDs of the conditions that are being evaluated on every interval")
+    @Parameter(name = ApiConstants.CONDITION_IDS, type = CommandType.LIST, 
collectionType = CommandType.UUID, entityType = ConditionResponse.class,
+            required = true, description = "the list of IDs of the conditions 
that are being evaluated on every interval")
     private List<Long> conditionIds;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmGroupCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmGroupCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmGroupCmd.java
index 70ec7d5..dadc965 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmGroupCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmGroupCmd.java
@@ -23,11 +23,13 @@ import org.apache.log4j.Logger;
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCreateCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AutoScaleVmGroupResponse;
+import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
+import org.apache.cloudstack.api.response.AutoScaleVmProfileResponse;
+import org.apache.cloudstack.api.response.FirewallRuleResponse;
 import com.cloud.async.AsyncJob;
 import com.cloud.event.EventTypes;
 import com.cloud.exception.InvalidParameterValueException;
@@ -45,8 +47,8 @@ public class CreateAutoScaleVmGroupCmd extends 
BaseAsyncCreateCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "firewall_rules")
-    @Parameter(name = ApiConstants.LBID, type = CommandType.LONG, required = 
true, description = "the ID of the load balancer rule")
+    @Parameter(name = ApiConstants.LBID, type = CommandType.UUID, entityType = 
FirewallRuleResponse.class,
+            required = true, description = "the ID of the load balancer rule")
     private long lbRuleId;
 
     @Parameter(name = ApiConstants.MIN_MEMBERS, type = CommandType.INTEGER, 
required = true, description = "the minimum number of members in the vmgroup, 
the number of instances in the vm group will be equal to or more than this 
number.")
@@ -58,16 +60,16 @@ public class CreateAutoScaleVmGroupCmd extends 
BaseAsyncCreateCmd {
     @Parameter(name = ApiConstants.INTERVAL, type = CommandType.INTEGER, 
description = "the frequency at which the conditions have to be evaluated")
     private Integer interval;
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.SCALEUP_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.LONG, required = true, 
description = "list of scaleup autoscale policies")
+    @Parameter(name = ApiConstants.SCALEUP_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            required = true, description = "list of scaleup autoscale 
policies")
     private List<Long> scaleUpPolicyIds;
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.SCALEDOWN_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.LONG, required = true, 
description = "list of scaledown autoscale policies")
+    @Parameter(name = ApiConstants.SCALEDOWN_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            required = true, description = "list of scaledown autoscale 
policies")
     private List<Long> scaleDownPolicyIds;
 
-    @IdentityMapper(entityTableName = "autoscale_vmprofiles")
-    @Parameter(name = ApiConstants.VMPROFILE_ID, type = CommandType.LONG, 
required = true, description = "the autoscale profile that contains information 
about the vms in the vm group.")
+    @Parameter(name = ApiConstants.VMPROFILE_ID, type = CommandType.UUID, 
entityType = AutoScaleVmProfileResponse.class,
+            required = true, description = "the autoscale profile that 
contains information about the vms in the vm group.")
     private long profileId;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
index 6ad4c61..05ddaa6 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
@@ -24,11 +24,14 @@ import org.apache.log4j.Logger;
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCreateCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AutoScaleVmProfileResponse;
+import org.apache.cloudstack.api.response.DiskOfferingResponse;
+import org.apache.cloudstack.api.response.TemplateResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.ZoneResponse;
 import com.cloud.async.AsyncJob;
 import com.cloud.event.EventTypes;
 import com.cloud.exception.InvalidParameterValueException;
@@ -49,16 +52,16 @@ public class CreateAutoScaleVmProfileCmd extends 
BaseAsyncCreateCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "data_center")
-    @Parameter(name = ApiConstants.ZONE_ID, type = CommandType.LONG, required 
= true, description = "availability zone for the auto deployed virtual machine")
+    @Parameter(name = ApiConstants.ZONE_ID, type = CommandType.UUID, 
entityType = ZoneResponse.class,
+            required = true, description = "availability zone for the auto 
deployed virtual machine")
     private Long zoneId;
 
-    @IdentityMapper(entityTableName = "disk_offering")
-    @Parameter(name = ApiConstants.SERVICE_OFFERING_ID, type = 
CommandType.LONG, required = true, description = "the service offering of the 
auto deployed virtual machine")
+    @Parameter(name = ApiConstants.SERVICE_OFFERING_ID, type = 
CommandType.UUID, entityType = DiskOfferingResponse.class,
+            required = true, description = "the service offering of the auto 
deployed virtual machine")
     private Long serviceOfferingId;
 
-    @IdentityMapper(entityTableName = "vm_template")
-    @Parameter(name = ApiConstants.TEMPLATE_ID, type = CommandType.LONG, 
required = true, description = "the template of the auto deployed virtual 
machine")
+    @Parameter(name = ApiConstants.TEMPLATE_ID, type = CommandType.UUID, 
entityType = TemplateResponse.class,
+            required = true, description = "the template of the auto deployed 
virtual machine")
     private Long templateId;
 
     @Parameter(name = ApiConstants.OTHER_DEPLOY_PARAMS, type = 
CommandType.STRING, description = "parameters other than 
zoneId/serviceOfferringId/templateId of the auto deployed virtual machine")
@@ -70,8 +73,8 @@ public class CreateAutoScaleVmProfileCmd extends 
BaseAsyncCreateCmd {
     @Parameter(name = ApiConstants.COUNTERPARAM_LIST, type = CommandType.MAP, 
description = "counterparam list. Example: 
counterparam[0].name=snmpcommunity&counterparam[0].value=public&counterparam[1].name=snmpport&counterparam[1].value=161")
     private Map counterParamList;
 
-    @IdentityMapper(entityTableName = "user")
-    @Parameter(name = ApiConstants.AUTOSCALE_USER_ID, type = CommandType.LONG, 
description = "the ID of the user used to launch and destroy the VMs")
+    @Parameter(name = ApiConstants.AUTOSCALE_USER_ID, type = CommandType.UUID, 
entityType = UserResponse.class,
+            description = "the ID of the user used to launch and destroy the 
VMs")
     private Long autoscaleUserId;
 
     private Map<String, String> otherDeployParamMap;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateConditionCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateConditionCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateConditionCmd.java
index fbc610a..a9dcd2f 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateConditionCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/CreateConditionCmd.java
@@ -17,12 +17,13 @@
 
 package org.apache.cloudstack.api.command.user.autoscale;
 
+import org.apache.cloudstack.api.response.CounterResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCreateCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -42,8 +43,8 @@ public class CreateConditionCmd extends BaseAsyncCreateCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "counter")
-    @Parameter(name = ApiConstants.COUNTER_ID, type = CommandType.LONG, 
required = true, description = "ID of the Counter.")
+    @Parameter(name = ApiConstants.COUNTER_ID, type = CommandType.UUID, 
entityType = CounterResponse.class,
+            required = true, description = "ID of the Counter.")
     private long counterId;
 
     @Parameter(name = ApiConstants.RELATIONAL_OPERATOR, type = 
CommandType.STRING, required = true, description = "Relational Operator to be 
used with threshold.")
@@ -56,8 +57,8 @@ public class CreateConditionCmd extends BaseAsyncCreateCmd {
     "Must be used with the domainId parameter.")
     private String accountName;
 
-    @IdentityMapper(entityTableName = "domain")
-    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.LONG, 
description = "the domain ID of the account.")
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, 
entityType = DomainResponse.class,
+            description = "the domain ID of the account.")
     private Long domainId;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
index 33c758c..ceb5f6a 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScalePolicyCmd.java
@@ -16,12 +16,12 @@
 // under the License.
 package org.apache.cloudstack.api.command.user.autoscale;
 
+import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -40,8 +40,8 @@ public class DeleteAutoScalePolicyCmd extends BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale policy")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            required = true, description = "the ID of the autoscale policy")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
index e78cced..9628e84 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmGroupCmd.java
@@ -16,12 +16,12 @@
 // under the License.
 package org.apache.cloudstack.api.command.user.autoscale;
 
+import org.apache.cloudstack.api.response.AutoScaleVmGroupResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -40,8 +40,8 @@ public class DeleteAutoScaleVmGroupCmd extends BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "autoscale_vmgroups")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale group")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmGroupResponse.class,
+            required = true, description = "the ID of the autoscale group")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
index a1ae31b..5605f02 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteAutoScaleVmProfileCmd.java
@@ -16,12 +16,12 @@
 // under the License.
 package org.apache.cloudstack.api.command.user.autoscale;
 
+import org.apache.cloudstack.api.response.AutoScaleVmProfileResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -40,8 +40,8 @@ public class DeleteAutoScaleVmProfileCmd extends BaseAsyncCmd 
{
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "autoscale_vmprofiles")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale profile")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmProfileResponse.class,
+            required = true, description = "the ID of the autoscale profile")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
index a300ee5..94b3663 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DeleteConditionCmd.java
@@ -17,12 +17,12 @@
 
 package org.apache.cloudstack.api.command.user.autoscale;
 
+import org.apache.cloudstack.api.response.ConditionResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -42,8 +42,8 @@ public class DeleteConditionCmd extends BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "conditions")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the condition.")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
ConditionResponse.class,
+            required= true, description = "the ID of the condition.")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/DisableAutoScaleVmGroupCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DisableAutoScaleVmGroupCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DisableAutoScaleVmGroupCmd.java
index fdf5fb4..c02c4ed 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/DisableAutoScaleVmGroupCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/DisableAutoScaleVmGroupCmd.java
@@ -22,7 +22,6 @@ import org.apache.log4j.Logger;
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -41,8 +40,8 @@ public class DisableAutoScaleVmGroupCmd extends BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName="autoscale_vmgroups")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, required=true, 
description="the ID of the autoscale group")
+    @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = 
AutoScaleVmGroupResponse.class,
+            required=true, description="the ID of the autoscale group")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/EnableAutoScaleVmGroupCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/EnableAutoScaleVmGroupCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/EnableAutoScaleVmGroupCmd.java
index cc76e6c..1c3c852 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/EnableAutoScaleVmGroupCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/EnableAutoScaleVmGroupCmd.java
@@ -22,7 +22,6 @@ import org.apache.log4j.Logger;
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -41,8 +40,8 @@ public class EnableAutoScaleVmGroupCmd extends BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName="autoscale_vmgroups")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, required=true, 
description="the ID of the autoscale group")
+    @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = 
AutoScaleVmGroupResponse.class,
+            required=true, description="the ID of the autoscale group")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScalePoliciesCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScalePoliciesCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScalePoliciesCmd.java
index b7df018..60e6c39 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScalePoliciesCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScalePoliciesCmd.java
@@ -19,11 +19,12 @@ package org.apache.cloudstack.api.command.user.autoscale;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.cloudstack.api.response.AutoScaleVmGroupResponse;
+import org.apache.cloudstack.api.response.ConditionResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseListAccountResourcesCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
@@ -40,19 +41,19 @@ public class ListAutoScalePoliciesCmd extends 
BaseListAccountResourcesCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, description = 
"the ID of the autoscale policy")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            description = "the ID of the autoscale policy")
     private Long id;
 
-    @IdentityMapper(entityTableName = "conditions")
-    @Parameter(name = ApiConstants.CONDITION_ID, type = CommandType.LONG, 
description = "the ID of the condition of the policy")
+    @Parameter(name = ApiConstants.CONDITION_ID, type = CommandType.UUID, 
entityType = ConditionResponse.class,
+            description = "the ID of the condition of the policy")
     private Long conditionId;
 
     @Parameter(name = ApiConstants.ACTION, type = CommandType.STRING, 
description = "the action to be executed if all the conditions evaluate to true 
for the specified duration.")
     private String action;
 
-    @IdentityMapper(entityTableName="autoscale_vmgroups")
-    @Parameter(name = ApiConstants.VMGROUP_ID, type = CommandType.LONG, 
description = "the ID of the autoscale vm group")
+    @Parameter(name = ApiConstants.VMGROUP_ID, type = CommandType.UUID, 
entityType = AutoScaleVmGroupResponse.class,
+            description = "the ID of the autoscale vm group")
     private Long vmGroupId;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmGroupsCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmGroupsCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmGroupsCmd.java
index 63719ac..7024cfc 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmGroupsCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmGroupsCmd.java
@@ -23,11 +23,14 @@ import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseListProjectAndAccountResourcesCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
 import org.apache.cloudstack.api.response.AutoScaleVmGroupResponse;
+import org.apache.cloudstack.api.response.AutoScaleVmProfileResponse;
+import org.apache.cloudstack.api.response.FirewallRuleResponse;
 import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.ZoneResponse;
 import com.cloud.exception.InvalidParameterValueException;
 import com.cloud.network.as.AutoScaleVmGroup;
 
@@ -41,24 +44,24 @@ public class ListAutoScaleVmGroupsCmd extends 
BaseListProjectAndAccountResources
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName="autoscale_vmgroups")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, description = 
"the ID of the autoscale vm group")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmGroupResponse.class,
+            description = "the ID of the autoscale vm group")
     private Long id;
 
-    @IdentityMapper(entityTableName="firewall_rules")
-    @Parameter(name = ApiConstants.LBID, type = CommandType.LONG, description 
= "the ID of the loadbalancer")
+    @Parameter(name = ApiConstants.LBID, type = CommandType.UUID, entityType = 
FirewallRuleResponse.class,
+            description = "the ID of the loadbalancer")
     private Long loadBalancerId;
 
-    @IdentityMapper(entityTableName="autoscale_vmprofiles")
-    @Parameter(name = ApiConstants.VMPROFILE_ID, type = CommandType.LONG, 
description = "the ID of the profile")
+    @Parameter(name = ApiConstants.VMPROFILE_ID, type = CommandType.UUID, 
entityType = AutoScaleVmProfileResponse.class,
+            description = "the ID of the profile")
     private Long profileId;
 
-    @IdentityMapper(entityTableName="autoscale_policies")
-    @Parameter(name = ApiConstants.POLICY_ID, type = CommandType.LONG, 
description = "the ID of the policy")
+    @Parameter(name = ApiConstants.POLICY_ID, type = CommandType.UUID, 
entityType = AutoScalePolicyResponse.class,
+            description = "the ID of the policy")
     private Long policyId;
 
-    @IdentityMapper(entityTableName="data_center")
-    @Parameter(name = ApiConstants.ZONE_ID, type = CommandType.LONG, 
description = "the availability zone ID")
+    @Parameter(name = ApiConstants.ZONE_ID, type = CommandType.UUID, 
entityType = ZoneResponse.class,
+            description = "the availability zone ID")
     private Long zoneId;
     // ///////////////////////////////////////////////////
     // ///////////////// Accessors ///////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmProfilesCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmProfilesCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmProfilesCmd.java
index 7145984..908c299 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmProfilesCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListAutoScaleVmProfilesCmd.java
@@ -19,11 +19,11 @@ package org.apache.cloudstack.api.command.user.autoscale;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.cloudstack.api.response.TemplateResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseListProjectAndAccountResourcesCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.response.AutoScaleVmProfileResponse;
@@ -40,12 +40,12 @@ public class ListAutoScaleVmProfilesCmd extends 
BaseListProjectAndAccountResourc
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName="autoscale_vmprofiles")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, description = 
"the ID of the autoscale vm profile")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmProfileResponse.class,
+            description = "the ID of the autoscale vm profile")
     private Long id;
 
-    @IdentityMapper(entityTableName="vm_template")
-    @Parameter(name=ApiConstants.TEMPLATE_ID, type=CommandType.LONG, 
description="the templateid of the autoscale vm profile")
+    @Parameter(name=ApiConstants.TEMPLATE_ID, type=CommandType.UUID, 
entityType = TemplateResponse.class,
+            description="the templateid of the autoscale vm profile")
     private Long templateId;
 
     @Parameter(name=ApiConstants.OTHER_DEPLOY_PARAMS, type=CommandType.STRING, 
description="the otherdeployparameters of the autoscale vm profile")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/ListConditionsCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListConditionsCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListConditionsCmd.java
index 7686910..c66f7cf 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListConditionsCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListConditionsCmd.java
@@ -20,11 +20,11 @@ package org.apache.cloudstack.api.command.user.autoscale;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseListAccountResourcesCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.response.ConditionResponse;
@@ -41,16 +41,16 @@ public class ListConditionsCmd extends 
BaseListAccountResourcesCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "conditions")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
false, description = "ID of the Condition.")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
ConditionResponse.class,
+            required = false, description = "ID of the Condition.")
     private Long id;
 
-    @IdentityMapper(entityTableName = "counter")
-    @Parameter(name = ApiConstants.COUNTER_ID, type = CommandType.LONG, 
required = false, description = "Counter-id of the condition.")
+    @Parameter(name = ApiConstants.COUNTER_ID, type = CommandType.UUID, 
entityType = CounterResponse.class,
+            required = false, description = "Counter-id of the condition.")
     private Long counterId;
 
-    @IdentityMapper(entityTableName="autoscale_policies")
-    @Parameter(name = ApiConstants.POLICY_ID, type = CommandType.LONG, 
description = "the ID of the policy")
+    @Parameter(name = ApiConstants.POLICY_ID, type = CommandType.UUID, 
entityType = AutoScalePolicyResponse.class,
+            description = "the ID of the policy")
     private Long policyId;
     // ///////////////////////////////////////////////////
     // ///////////// API Implementation///////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/ListCountersCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListCountersCmd.java 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListCountersCmd.java
index 47803c5..04e6006 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/ListCountersCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/ListCountersCmd.java
@@ -24,7 +24,6 @@ import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseListCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.response.CounterResponse;
@@ -41,8 +40,8 @@ public class ListCountersCmd extends BaseListCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "counter")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, description = 
"ID of the Counter.")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
CounterResponse.class,
+            description = "ID of the Counter.")
     private Long id;
 
     @Parameter(name = ApiConstants.NAME, type = CommandType.STRING, 
description = "Name of the counter.")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScalePolicyCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScalePolicyCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScalePolicyCmd.java
index 918aa8e..a949888 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScalePolicyCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScalePolicyCmd.java
@@ -19,12 +19,12 @@ package org.apache.cloudstack.api.command.user.autoscale;
 
 import java.util.List;
 
+import org.apache.cloudstack.api.response.ConditionResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -51,12 +51,12 @@ public class UpdateAutoScalePolicyCmd extends BaseAsyncCmd {
     @Parameter(name = ApiConstants.QUIETTIME, type = CommandType.INTEGER, 
description = "the cool down period for which the policy should not be 
evaluated after the action has been taken")
     private Integer quietTime;
 
-    @IdentityMapper(entityTableName = "conditions")
-    @Parameter(name = ApiConstants.CONDITION_IDS, type = CommandType.LIST, 
collectionType = CommandType.LONG, description = "the list of IDs of the 
conditions that are being evaluated on every interval")
+    @Parameter(name = ApiConstants.CONDITION_IDS, type = CommandType.LIST, 
collectionType = CommandType.UUID, entityType = ConditionResponse.class,
+            description = "the list of IDs of the conditions that are being 
evaluated on every interval")
     private List<Long> conditionIds;
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale policy")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            required = true, description = "the ID of the autoscale policy")
     private Long id;
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmGroupCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmGroupCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmGroupCmd.java
index ecc86ab..2ca9515 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmGroupCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmGroupCmd.java
@@ -19,12 +19,12 @@ package org.apache.cloudstack.api.command.user.autoscale;
 
 import java.util.List;
 
+import org.apache.cloudstack.api.response.AutoScalePolicyResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -54,16 +54,16 @@ public class UpdateAutoScaleVmGroupCmd extends BaseAsyncCmd 
{
     @Parameter(name=ApiConstants.INTERVAL, type=CommandType.INTEGER, 
description="the frequency at which the conditions have to be evaluated")
     private Integer interval;
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.SCALEUP_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.LONG, description = "list of 
scaleup autoscale policies")
+    @Parameter(name = ApiConstants.SCALEUP_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            description = "list of scaleup autoscale policies")
     private List<Long> scaleUpPolicyIds;
 
-    @IdentityMapper(entityTableName = "autoscale_policies")
-    @Parameter(name = ApiConstants.SCALEDOWN_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.LONG, description = "list of 
scaledown autoscale policies")
+    @Parameter(name = ApiConstants.SCALEDOWN_POLICY_IDS, type = 
CommandType.LIST, collectionType = CommandType.UUID, entityType = 
AutoScalePolicyResponse.class,
+            description = "list of scaledown autoscale policies")
     private List<Long> scaleDownPolicyIds;
 
-    @IdentityMapper(entityTableName = "autoscale_vmgroups")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale group")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmGroupResponse.class,
+            required = true, description = "the ID of the autoscale group")
     private Long id;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmProfileCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmProfileCmd.java
 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmProfileCmd.java
index 45911c1..d616eb9 100644
--- 
a/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmProfileCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/user/autoscale/UpdateAutoScaleVmProfileCmd.java
@@ -19,12 +19,13 @@ package org.apache.cloudstack.api.command.user.autoscale;
 
 import java.util.Map;
 
+import org.apache.cloudstack.api.response.TemplateResponse;
+import org.apache.cloudstack.api.response.UserResponse;
 import org.apache.log4j.Logger;
 
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseAsyncCmd;
 import org.apache.cloudstack.api.BaseCmd;
-import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
@@ -45,12 +46,12 @@ public class UpdateAutoScaleVmProfileCmd extends 
BaseAsyncCmd {
     // ////////////// API parameters /////////////////////
     // ///////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName = "autoscale_vmprofiles")
-    @Parameter(name = ApiConstants.ID, type = CommandType.LONG, required = 
true, description = "the ID of the autoscale vm profile")
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = 
AutoScaleVmProfileResponse.class,
+            required = true, description = "the ID of the autoscale vm 
profile")
     private Long id;
 
-    @IdentityMapper(entityTableName = "vm_template")
-    @Parameter(name = ApiConstants.TEMPLATE_ID, type = CommandType.LONG, 
description = "the template of the auto deployed virtual machine")
+    @Parameter(name = ApiConstants.TEMPLATE_ID, type = CommandType.UUID, 
entityType = TemplateResponse.class,
+            description = "the template of the auto deployed virtual machine")
     private Long templateId;
 
     @Parameter(name = ApiConstants.AUTOSCALE_VM_DESTROY_TIME, type = 
CommandType.INTEGER, description = "the time allowed for existing connections 
to get closed before a vm is destroyed")
@@ -59,8 +60,8 @@ public class UpdateAutoScaleVmProfileCmd extends BaseAsyncCmd 
{
     @Parameter(name = ApiConstants.COUNTERPARAM_LIST, type = CommandType.MAP, 
description = "counterparam list. Example: 
counterparam[0].name=snmpcommunity&counterparam[0].value=public&counterparam[1].name=snmpport&counterparam[1].value=161")
     private Map counterParamList;
 
-    @IdentityMapper(entityTableName = "user")
-    @Parameter(name = ApiConstants.AUTOSCALE_USER_ID, type = CommandType.LONG, 
description = "the ID of the user used to launch and destroy the VMs")
+    @Parameter(name = ApiConstants.AUTOSCALE_USER_ID, type = CommandType.UUID, 
entityType = UserResponse.class,
+            description = "the ID of the user used to launch and destroy the 
VMs")
     private Long autoscaleUserId;
 
     // ///////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/response/AutoScalePolicyResponse.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/response/AutoScalePolicyResponse.java 
b/api/src/org/apache/cloudstack/api/response/AutoScalePolicyResponse.java
index 3be8a42..27b50be 100644
--- a/api/src/org/apache/cloudstack/api/response/AutoScalePolicyResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/AutoScalePolicyResponse.java
@@ -16,13 +16,16 @@
 // under the License.
 package org.apache.cloudstack.api.response;
 
+import com.cloud.network.as.AutoScalePolicy;
 import org.apache.cloudstack.api.ApiConstants;
 import com.cloud.serializer.Param;
 import com.google.gson.annotations.SerializedName;
 import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
 
 import java.util.List;
 
+@Entity(value=AutoScalePolicy.class)
 public class AutoScalePolicyResponse extends BaseResponse implements 
ControlledEntityResponse {
 
     @SerializedName(ApiConstants.ID)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/response/AutoScaleVmGroupResponse.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/response/AutoScaleVmGroupResponse.java 
b/api/src/org/apache/cloudstack/api/response/AutoScaleVmGroupResponse.java
index 125aa9b..d793899 100644
--- a/api/src/org/apache/cloudstack/api/response/AutoScaleVmGroupResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/AutoScaleVmGroupResponse.java
@@ -16,14 +16,17 @@
 // under the License.
 package org.apache.cloudstack.api.response;
 
+import com.cloud.network.as.AutoScaleVmGroup;
 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;
+import org.apache.cloudstack.api.Entity;
 
 import java.util.List;
 
+@Entity(value=AutoScaleVmGroup.class)
 public class AutoScaleVmGroupResponse extends BaseResponse implements 
ControlledEntityResponse {
 
     @SerializedName(ApiConstants.ID)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/response/AutoScaleVmProfileResponse.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/response/AutoScaleVmProfileResponse.java 
b/api/src/org/apache/cloudstack/api/response/AutoScaleVmProfileResponse.java
index f5ed4b1..356460b 100644
--- a/api/src/org/apache/cloudstack/api/response/AutoScaleVmProfileResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/AutoScaleVmProfileResponse.java
@@ -20,14 +20,17 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import com.cloud.network.as.AutoScaleVmProfile;
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.api.BaseCmd.CommandType;
 import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
 import org.apache.cloudstack.api.Parameter;
 import com.cloud.serializer.Param;
 import com.cloud.utils.Pair;
 import com.google.gson.annotations.SerializedName;
 
+@Entity(value=AutoScaleVmProfile.class)
 public class AutoScaleVmProfileResponse extends BaseResponse implements 
ControlledEntityResponse {
 
     @SerializedName(ApiConstants.ID)

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/api/src/org/apache/cloudstack/api/response/ConditionResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/ConditionResponse.java 
b/api/src/org/apache/cloudstack/api/response/ConditionResponse.java
index 168ba5c..f2665c7 100644
--- a/api/src/org/apache/cloudstack/api/response/ConditionResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/ConditionResponse.java
@@ -19,11 +19,14 @@ package org.apache.cloudstack.api.response;
 
 import java.util.List;
 
+import com.cloud.network.as.Condition;
 import org.apache.cloudstack.api.ApiConstants;
 import com.cloud.serializer.Param;
 import com.google.gson.annotations.SerializedName;
 import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
 
+@Entity(value=Condition.class)
 @SuppressWarnings("unused")
 public class ConditionResponse extends BaseResponse implements 
ControlledEntityResponse {
     @SerializedName("id")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/af5eacfc/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
index 4dae4c5..8f7be39 100644
--- a/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/FirewallRuleResponse.java
@@ -18,11 +18,14 @@ package org.apache.cloudstack.api.response;
 
 import java.util.List;
 
+import com.cloud.network.rules.FirewallRule;
 import org.apache.cloudstack.api.ApiConstants;
 import com.cloud.serializer.Param;
 import com.google.gson.annotations.SerializedName;
 import org.apache.cloudstack.api.BaseResponse;
+import org.apache.cloudstack.api.Entity;
 
+@Entity(value=FirewallRule.class)
 @SuppressWarnings("unused")
 public class FirewallRuleResponse extends BaseResponse {
     @SerializedName(ApiConstants.ID) @Param(description="the ID of the port 
forwarding rule")

Reply via email to