API refactoring -- add annotation for Account group and account response.

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/7ea690c7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/7ea690c7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/7ea690c7

Branch: refs/heads/api_refactoring
Commit: 7ea690c74d56cf0442a1b421e87e3043352d4c47
Parents: 2748204
Author: Fang Wang <[email protected]>
Authored: Fri Dec 14 11:47:52 2012 -0800
Committer: Rohit Yadav <[email protected]>
Committed: Fri Dec 14 13:49:38 2012 -0800

----------------------------------------------------------------------
 .../command/admin/account/CreateAccountCmd.java    |    5 +++--
 .../command/admin/account/DeleteAccountCmd.java    |    3 ++-
 .../command/admin/account/DisableAccountCmd.java   |   10 ++++++----
 .../command/admin/account/EnableAccountCmd.java    |   10 ++++++----
 .../api/command/admin/account/LockAccountCmd.java  |    6 ++++--
 .../command/admin/account/UpdateAccountCmd.java    |   10 ++++++----
 .../cloudstack/api/response/AccountResponse.java   |    5 +++++
 7 files changed, 32 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java 
b/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java
index 1d40f9d..fc38ca7 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java
@@ -28,6 +28,7 @@ import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
 import org.apache.cloudstack.api.response.UserResponse;
 import com.cloud.user.Account;
 import com.cloud.user.UserAccount;
@@ -49,8 +50,8 @@ public class CreateAccountCmd extends BaseCmd {
     @Parameter(name=ApiConstants.ACCOUNT_TYPE, type=CommandType.SHORT, 
required=true, description="Type of the account.  Specify 0 for user, 1 for 
root admin, and 2 for domain admin")
     private Short accountType;
 
-    @IdentityMapper(entityTableName="domain")
-    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Creates the user under the specified domain.")
+    //@IdentityMapper(entityTableName="domain")
+    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Creates the user under the specified domain.", 
entityType=DomainResponse.class)
     private Long domainId;
 
     @Parameter(name=ApiConstants.EMAIL, type=CommandType.STRING, 
required=true, description="email")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/DeleteAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/DeleteAccountCmd.java 
b/api/src/org/apache/cloudstack/api/command/admin/account/DeleteAccountCmd.java
index 66780c8..c25137b 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/DeleteAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/DeleteAccountCmd.java
@@ -25,6 +25,7 @@ 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.AccountResponse;
 import org.apache.cloudstack.api.response.SuccessResponse;
 import com.cloud.async.AsyncJob;
 import com.cloud.event.EventTypes;
@@ -43,7 +44,7 @@ public class DeleteAccountCmd extends BaseAsyncCmd {
 
 
     @IdentityMapper(entityTableName="account")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, required=true, 
description="Account id")
+    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, required=true, 
description="Account id", entityType=AccountResponse.class)
     private Long id;
 
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/DisableAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/DisableAccountCmd.java
 
b/api/src/org/apache/cloudstack/api/command/admin/account/DisableAccountCmd.java
index 8666bfe..906386e 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/DisableAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/DisableAccountCmd.java
@@ -26,6 +26,8 @@ import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+
 import com.cloud.async.AsyncJob;
 import com.cloud.event.EventTypes;
 import com.cloud.exception.ConcurrentOperationException;
@@ -41,15 +43,15 @@ public class DisableAccountCmd extends BaseAsyncCmd {
     /////////////////////////////////////////////////////
     //////////////// API parameters /////////////////////
     /////////////////////////////////////////////////////
-    @IdentityMapper(entityTableName="account")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id")
+    //@IdentityMapper(entityTableName="account")
+    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id", entityType=AccountResponse.class)
     private Long id;
 
     @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, 
description="Disables specified account.")
     private String accountName;
 
-    @IdentityMapper(entityTableName="domain")
-    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Disables specified account in this domain.")
+    //@IdentityMapper(entityTableName="domain")
+    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Disables specified account in this domain.", 
entityType=DomainResponse.class)
     private Long domainId;
 
     @Parameter(name=ApiConstants.LOCK, type=CommandType.BOOLEAN, 
required=true, description="If true, only lock the account; else disable the 
account")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/EnableAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/EnableAccountCmd.java 
b/api/src/org/apache/cloudstack/api/command/admin/account/EnableAccountCmd.java
index a8336b1..3cf6360 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/EnableAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/EnableAccountCmd.java
@@ -25,6 +25,8 @@ import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+
 import com.cloud.user.Account;
 
 @Implementation(description="Enables an account", 
responseObject=AccountResponse.class)
@@ -35,15 +37,15 @@ public class EnableAccountCmd extends BaseCmd {
     /////////////////////////////////////////////////////
     //////////////// API parameters /////////////////////
     /////////////////////////////////////////////////////
-    @IdentityMapper(entityTableName="account")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id")
+    //@IdentityMapper(entityTableName="account")
+    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id", entityType=AccountResponse.class)
     private Long id;
 
     @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, 
description="Enables specified account.")
     private String accountName;
 
-    @IdentityMapper(entityTableName="domain")
-    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Enables specified account in this domain.")
+    //@IdentityMapper(entityTableName="domain")
+    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="Enables specified account in this domain.", 
entityType=DomainResponse.class)
     private Long domainId;
 
     /////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/LockAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/LockAccountCmd.java 
b/api/src/org/apache/cloudstack/api/command/admin/account/LockAccountCmd.java
index d088abf..f50e692 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/LockAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/LockAccountCmd.java
@@ -24,6 +24,8 @@ import org.apache.cloudstack.api.IdentityMapper;
 import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+
 import com.cloud.user.Account;
 
 @Implementation(description="Locks an account", 
responseObject=AccountResponse.class)
@@ -39,8 +41,8 @@ public class LockAccountCmd extends BaseCmd {
     @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, 
required=true, description="Locks the specified account.")
     private String accountName;
 
-    @IdentityMapper(entityTableName="domain")
-    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
required=true, description="Locks the specified account on this domain.")
+    //@IdentityMapper(entityTableName="domain")
+    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
required=true, description="Locks the specified account on this domain.", 
entityType=DomainResponse.class)
     private Long domainId;
 
     /////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/command/admin/account/UpdateAccountCmd.java
----------------------------------------------------------------------
diff --git 
a/api/src/org/apache/cloudstack/api/command/admin/account/UpdateAccountCmd.java 
b/api/src/org/apache/cloudstack/api/command/admin/account/UpdateAccountCmd.java
index 1c61be1..b326710 100644
--- 
a/api/src/org/apache/cloudstack/api/command/admin/account/UpdateAccountCmd.java
+++ 
b/api/src/org/apache/cloudstack/api/command/admin/account/UpdateAccountCmd.java
@@ -28,6 +28,8 @@ import org.apache.cloudstack.api.Implementation;
 import org.apache.cloudstack.api.Parameter;
 import org.apache.cloudstack.api.ServerApiException;
 import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+
 import com.cloud.user.Account;
 
 @Implementation(description="Updates account information for the authenticated 
user", responseObject=AccountResponse.class)
@@ -39,15 +41,15 @@ public class UpdateAccountCmd extends BaseCmd{
     //////////////// API parameters /////////////////////
     /////////////////////////////////////////////////////
 
-    @IdentityMapper(entityTableName="account")
-    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id")
+    //@IdentityMapper(entityTableName="account")
+    @Parameter(name=ApiConstants.ID, type=CommandType.LONG, 
description="Account id", entityType=AccountResponse.class)
     private Long id;
 
     @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, 
description="the current account name")
     private String accountName;
 
-    @IdentityMapper(entityTableName="domain")
-    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="the ID of the domain where the account exists")
+    //@IdentityMapper(entityTableName="domain")
+    @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.LONG, 
description="the ID of the domain where the account exists", 
entityType=DomainResponse.class)
     private Long domainId;
 
     @Parameter(name=ApiConstants.NEW_NAME, type=CommandType.STRING, 
required=true, description="new name for the account")

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/7ea690c7/api/src/org/apache/cloudstack/api/response/AccountResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/AccountResponse.java 
b/api/src/org/apache/cloudstack/api/response/AccountResponse.java
index 3fa5f7e..93d860d 100644
--- a/api/src/org/apache/cloudstack/api/response/AccountResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/AccountResponse.java
@@ -20,12 +20,17 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.Entity;
+
+import com.cloud.domain.Domain;
 import com.cloud.serializer.Param;
+import com.cloud.user.Account;
 import com.cloud.utils.IdentityProxy;
 import com.google.gson.annotations.SerializedName;
 import org.apache.cloudstack.api.BaseResponse;
 
 @SuppressWarnings("unused")
+@Entity(value = Account.class)
 public class AccountResponse extends BaseResponse {
     @SerializedName(ApiConstants.ID) @Param(description="the id of the 
account")
     private IdentityProxy id = new IdentityProxy("account");

Reply via email to