You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by mc...@apache.org on 2012/12/18 21:02:49 UTC

[6/8] git commit: Remove IdentityProxy from GuestOSResponse and GuestOSCategoryResponse.

Remove IdentityProxy from GuestOSResponse and GuestOSCategoryResponse.

Signed-off-by: Min Chen <mi...@citrix.com>


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

Branch: refs/heads/api_refactoring
Commit: 79f8c104eb149aba7db353c9536b7b3410239cf1
Parents: e017dc2
Author: Min Chen <mi...@citrix.com>
Authored: Mon Dec 17 18:01:31 2012 -0800
Committer: Min Chen <mi...@citrix.com>
Committed: Mon Dec 17 18:01:31 2012 -0800

----------------------------------------------------------------------
 api/src/com/cloud/storage/GuestOS.java             |    2 +
 api/src/com/cloud/storage/GuestOsCategory.java     |    2 +
 .../apache/cloudstack/api/ResponseGenerator.java   |    4 ++
 .../user/guest/ListGuestOsCategoriesCmd.java       |    2 +-
 .../api/command/user/guest/ListGuestOsCmd.java     |    7 +---
 .../api/response/GuestOSCategoryResponse.java      |   10 ++--
 .../cloudstack/api/response/GuestOSResponse.java   |   20 +++++-----
 core/src/com/cloud/storage/GuestOSCategoryVO.java  |   16 ++++----
 core/src/com/cloud/storage/GuestOSVO.java          |   32 +++++++-------
 server/src/com/cloud/api/ApiDBUtils.java           |    3 +
 server/src/com/cloud/api/ApiResponseHelper.java    |   19 +++++++++
 11 files changed, 71 insertions(+), 46 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/api/src/com/cloud/storage/GuestOS.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/storage/GuestOS.java b/api/src/com/cloud/storage/GuestOS.java
index b9727db..828ba27 100644
--- a/api/src/com/cloud/storage/GuestOS.java
+++ b/api/src/com/cloud/storage/GuestOS.java
@@ -20,6 +20,8 @@ public interface GuestOS {
 
     long getId();
 
+    String getUuid();
+
     String getName();
 
     String getDisplayName();

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/api/src/com/cloud/storage/GuestOsCategory.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/storage/GuestOsCategory.java b/api/src/com/cloud/storage/GuestOsCategory.java
index 42320d9..cae4518 100644
--- a/api/src/com/cloud/storage/GuestOsCategory.java
+++ b/api/src/com/cloud/storage/GuestOsCategory.java
@@ -21,6 +21,8 @@ public interface GuestOsCategory {
     public static final String CATEGORY_NONE ="None";
     long getId();
 
+    String getUuid();
+
     String getName();
 
     void setName(String name);

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/api/src/org/apache/cloudstack/api/ResponseGenerator.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/ResponseGenerator.java b/api/src/org/apache/cloudstack/api/ResponseGenerator.java
index 7f1ef48..819f4dd 100644
--- a/api/src/org/apache/cloudstack/api/ResponseGenerator.java
+++ b/api/src/org/apache/cloudstack/api/ResponseGenerator.java
@@ -41,6 +41,7 @@ import org.apache.cloudstack.api.response.EventResponse;
 import org.apache.cloudstack.api.response.ExtractResponse;
 import org.apache.cloudstack.api.response.FirewallResponse;
 import org.apache.cloudstack.api.response.FirewallRuleResponse;
+import org.apache.cloudstack.api.response.GuestOSResponse;
 import org.apache.cloudstack.api.response.HostResponse;
 import org.apache.cloudstack.api.response.HypervisorCapabilitiesResponse;
 import org.apache.cloudstack.api.response.IPAddressResponse;
@@ -141,6 +142,7 @@ import com.cloud.projects.Project;
 import com.cloud.projects.ProjectAccount;
 import com.cloud.projects.ProjectInvitation;
 import com.cloud.server.ResourceTag;
+import com.cloud.storage.GuestOS;
 import com.cloud.storage.Snapshot;
 import com.cloud.storage.StoragePool;
 import com.cloud.storage.Swift;
@@ -367,4 +369,6 @@ public interface ResponseGenerator {
     AutoScaleVmProfileResponse createAutoScaleVmProfileResponse(AutoScaleVmProfile profile);
 
     AutoScaleVmGroupResponse createAutoScaleVmGroupResponse(AutoScaleVmGroup vmGroup);
+
+    GuestOSResponse createGuestOSResponse(GuestOS os);
 }

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCategoriesCmd.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCategoriesCmd.java b/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCategoriesCmd.java
index 06c2208..a98bd86 100644
--- a/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCategoriesCmd.java
+++ b/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCategoriesCmd.java
@@ -79,7 +79,7 @@ public class ListGuestOsCategoriesCmd extends BaseListCmd {
         List<GuestOSCategoryResponse> osCatResponses = new ArrayList<GuestOSCategoryResponse>();
         for (GuestOsCategory osCategory : result.first()) {
             GuestOSCategoryResponse categoryResponse = new GuestOSCategoryResponse();
-            categoryResponse.setId(osCategory.getId());
+            categoryResponse.setId(osCategory.getUuid());
             categoryResponse.setName(osCategory.getName());
 
             categoryResponse.setObjectName("oscategory");

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCmd.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCmd.java b/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCmd.java
index 7a43f2b..c47c0b4 100644
--- a/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCmd.java
+++ b/api/src/org/apache/cloudstack/api/command/user/guest/ListGuestOsCmd.java
@@ -85,12 +85,7 @@ public class ListGuestOsCmd extends BaseListCmd {
         ListResponse<GuestOSResponse> response = new ListResponse<GuestOSResponse>();
         List<GuestOSResponse> osResponses = new ArrayList<GuestOSResponse>();
         for (GuestOS guestOS : result.first()) {
-            GuestOSResponse guestOSResponse = new GuestOSResponse();
-            guestOSResponse.setDescription(guestOS.getDisplayName());
-            guestOSResponse.setId(guestOS.getId());
-            guestOSResponse.setOsCategoryId(guestOS.getCategoryId());
-
-            guestOSResponse.setObjectName("ostype");
+            GuestOSResponse guestOSResponse = _responseGenerator.createGuestOSResponse(guestOS);
             osResponses.add(guestOSResponse);
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/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
index a271686..62537d9 100644
--- a/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/GuestOSCategoryResponse.java
@@ -24,17 +24,17 @@ 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");
+    private String id;
 
     @SerializedName(ApiConstants.NAME) @Param(description="the name of the OS category")
     private String name;
 
-    public Long getId() {
-        return id.getValue();
+    public String getId() {
+        return id;
     }
 
-    public void setId(Long id) {
-        this.id.setValue(id);
+    public void setId(String id) {
+        this.id = id;
     }
 
     public String getName() {

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/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
index 6c15480..469c310 100644
--- a/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/GuestOSResponse.java
@@ -24,28 +24,28 @@ 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");
+    private String id;
 
     @SerializedName(ApiConstants.OS_CATEGORY_ID) @Param(description="the ID of the OS category")
-    private IdentityProxy osCategoryId = new IdentityProxy("guest_os_category");
+    private String osCategoryId;
 
     @SerializedName(ApiConstants.DESCRIPTION) @Param(description="the name/description of the OS type")
     private String description;
 
-    public Long getId() {
-        return id.getValue();
+    public String getId() {
+        return id;
     }
 
-    public void setId(Long id) {
-        this.id.setValue(id);
+    public void setId(String id) {
+        this.id = id;
     }
 
-    public Long getOsCategoryId() {
-        return osCategoryId.getValue();
+    public String getOsCategoryId() {
+        return osCategoryId;
     }
 
-    public void setOsCategoryId(Long osCategoryId) {
-        this.osCategoryId.setValue(osCategoryId);
+    public void setOsCategoryId(String osCategoryId) {
+        this.osCategoryId = osCategoryId;
     }
 
     public String getDescription() {

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/core/src/com/cloud/storage/GuestOSCategoryVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/GuestOSCategoryVO.java b/core/src/com/cloud/storage/GuestOSCategoryVO.java
index 76b557c..dfe7028 100644
--- a/core/src/com/cloud/storage/GuestOSCategoryVO.java
+++ b/core/src/com/cloud/storage/GuestOSCategoryVO.java
@@ -29,28 +29,28 @@ import org.apache.cloudstack.api.Identity;
 
 @Entity
 @Table(name="guest_os_category")
-public class GuestOSCategoryVO implements GuestOsCategory, Identity {
+public class GuestOSCategoryVO implements GuestOsCategory {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
     long id;
-    
+
     @Column(name="name")
     String name;
-    
+
     @Column(name="uuid")
     String uuid = UUID.randomUUID().toString();
-    
+
     @Override
     public long getId() {
     	return id;
     }
-    
+
     @Override
     public String getName() {
-    	return name; 
+    	return name;
     }
-    
+
     @Override
     public void setName(String name) {
     	this.name = name;
@@ -60,7 +60,7 @@ public class GuestOSCategoryVO implements GuestOsCategory, Identity {
     public String getUuid() {
     	return this.uuid;
     }
-    
+
     public void setUuid(String uuid) {
     	this.uuid = uuid;
     }

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/core/src/com/cloud/storage/GuestOSVO.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/storage/GuestOSVO.java b/core/src/com/cloud/storage/GuestOSVO.java
index 547b2b7..7fe7f6d 100644
--- a/core/src/com/cloud/storage/GuestOSVO.java
+++ b/core/src/com/cloud/storage/GuestOSVO.java
@@ -29,60 +29,60 @@ import org.apache.cloudstack.api.Identity;
 
 @Entity
 @Table(name="guest_os")
-public class GuestOSVO implements GuestOS, Identity {
+public class GuestOSVO implements GuestOS {
     @Id
     @GeneratedValue(strategy=GenerationType.IDENTITY)
     @Column(name="id")
     long id;
-    
+
     @Column(name="category_id")
     private long categoryId;
-    
+
     @Column(name="name")
     String name;
-    
+
     @Column(name="display_name")
     String displayName;
-    
+
     @Column(name="uuid")
     String uuid = UUID.randomUUID().toString();
-    
+
     @Override
     public long getId() {
     	return id;
     }
-    
+
     public long getCategoryId() {
     	return categoryId;
     }
-    
+
     public void setCategoryId(long categoryId) {
     	this.categoryId = categoryId;
     }
-    
+
     @Override
     public String getName() {
-    	return name; 
+    	return name;
     }
-    
+
     public void setName(String name) {
     	this.name = name;
     }
-    
+
     @Override
     public String getDisplayName() {
     	return displayName;
     }
-    
+
     public void setDisplayName(String displayName) {
     	this.displayName = displayName;
     }
-    
+
     @Override
     public String getUuid() {
-    	return this.uuid; 
+    	return this.uuid;
     }
-    
+
     public void setUuid(String uuid) {
     	this.uuid = uuid;
     }

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/server/src/com/cloud/api/ApiDBUtils.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java
index 60a9b26..7c5f4b5 100755
--- a/server/src/com/cloud/api/ApiDBUtils.java
+++ b/server/src/com/cloud/api/ApiDBUtils.java
@@ -1017,6 +1017,9 @@ public class ApiDBUtils {
         return _asVmGroupDao.findById(groupId);
     }
 
+    public static GuestOSCategoryVO findGuestOsCategoryById(long catId){
+        return _guestOSCategoryDao.findById(catId);
+    }
     ///////////////////////////////////////////////////////////////////////
     //  Newly Added Utility Methods for List API refactoring             //
     ///////////////////////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/79f8c104/server/src/com/cloud/api/ApiResponseHelper.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java
index 5f584f7..0eeb8ca 100755
--- a/server/src/com/cloud/api/ApiResponseHelper.java
+++ b/server/src/com/cloud/api/ApiResponseHelper.java
@@ -73,6 +73,7 @@ import org.apache.cloudstack.api.response.EventResponse;
 import org.apache.cloudstack.api.response.ExtractResponse;
 import org.apache.cloudstack.api.response.FirewallResponse;
 import org.apache.cloudstack.api.response.FirewallRuleResponse;
+import org.apache.cloudstack.api.response.GuestOSResponse;
 import org.apache.cloudstack.api.response.HostResponse;
 import org.apache.cloudstack.api.response.HypervisorCapabilitiesResponse;
 import org.apache.cloudstack.api.response.ControlledViewEntityResponse;
@@ -3472,4 +3473,22 @@ public class ApiResponseHelper implements ResponseGenerator {
         response.setObjectName("vpnconnection");
         return response;
     }
+
+
+
+    @Override
+    public GuestOSResponse createGuestOSResponse(GuestOS guestOS) {
+        GuestOSResponse response = new GuestOSResponse();
+        response.setDescription(guestOS.getDisplayName());
+        response.setId(guestOS.getUuid());
+        GuestOSCategoryVO category = ApiDBUtils.findGuestOsCategoryById(guestOS.getCategoryId());
+        if ( category != null ){
+            response.setOsCategoryId(category.getUuid());
+        }
+
+        response.setObjectName("ostype");
+        return response;
+    }
+
+
 }