Updated Branches:
  refs/heads/4.2 cb609d24d -> 431ea4988

CLOUDSTACK-4302: Instance wizard UI: Support affinity groups for dedicated zones

Changes:
- Add affinityGroupUuid in the listzones response for dedicatedZones.


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

Branch: refs/heads/4.2
Commit: 431ea4988ccb03d341e8232667fc9cfebbea815c
Parents: cb609d2
Author: Prachi Damle <[email protected]>
Authored: Wed Aug 14 13:41:01 2013 -0700
Committer: Prachi Damle <[email protected]>
Committed: Wed Aug 14 13:42:32 2013 -0700

----------------------------------------------------------------------
 .../cloudstack/api/response/ZoneResponse.java   |  8 +++++
 .../api/query/dao/DataCenterJoinDaoImpl.java    |  1 +
 .../cloud/api/query/vo/DataCenterJoinVO.java    | 12 +++++++
 setup/db/db/schema-412to420.sql                 | 36 ++++++++++++++++++++
 4 files changed, 57 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/431ea498/api/src/org/apache/cloudstack/api/response/ZoneResponse.java
----------------------------------------------------------------------
diff --git a/api/src/org/apache/cloudstack/api/response/ZoneResponse.java 
b/api/src/org/apache/cloudstack/api/response/ZoneResponse.java
index 2ebb15a..2b3e4be 100644
--- a/api/src/org/apache/cloudstack/api/response/ZoneResponse.java
+++ b/api/src/org/apache/cloudstack/api/response/ZoneResponse.java
@@ -99,6 +99,10 @@ public class ZoneResponse extends BaseResponse {
     @SerializedName(ApiConstants.LOCAL_STORAGE_ENABLED) 
@Param(description="true if local storage offering enabled, false otherwise")
     private boolean localStorageEnabled;
 
+    @SerializedName(ApiConstants.AFFINITY_GROUP_ID)
+    @Param(description = "the UUID of the affinity group associated, null for 
public zones")
+    private String affinityGroupId;
+
     public void setId(String id) {
         this.id = id;
     }
@@ -198,4 +202,8 @@ public class ZoneResponse extends BaseResponse {
        public void setIp6Dns2(String ip6Dns2) {
                this.ip6Dns2 = ip6Dns2;
        }
+
+    public void setAffinityGroupId(String affinityGroupId) {
+        this.affinityGroupId = affinityGroupId;
+    }
 }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/431ea498/server/src/com/cloud/api/query/dao/DataCenterJoinDaoImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/dao/DataCenterJoinDaoImpl.java 
b/server/src/com/cloud/api/query/dao/DataCenterJoinDaoImpl.java
index 4c8b545..cf47b3a 100644
--- a/server/src/com/cloud/api/query/dao/DataCenterJoinDaoImpl.java
+++ b/server/src/com/cloud/api/query/dao/DataCenterJoinDaoImpl.java
@@ -94,6 +94,7 @@ public class DataCenterJoinDaoImpl extends 
GenericDaoBase<DataCenterJoinVO, Long
         
zoneResponse.setAllocationState(dataCenter.getAllocationState().toString());
         zoneResponse.setZoneToken(dataCenter.getZoneToken());
         zoneResponse.setDhcpProvider(dataCenter.getDhcpProvider());
+        zoneResponse.setAffinityGroupId(dataCenter.getAffinityGroupUuid());
         zoneResponse.setObjectName("zone");
         return zoneResponse;
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/431ea498/server/src/com/cloud/api/query/vo/DataCenterJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/DataCenterJoinVO.java 
b/server/src/com/cloud/api/query/vo/DataCenterJoinVO.java
index 84becf2..081bc31 100644
--- a/server/src/com/cloud/api/query/vo/DataCenterJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/DataCenterJoinVO.java
@@ -108,6 +108,12 @@ public class DataCenterJoinVO extends BaseViewVO 
implements InternalIdentity, Id
     @Column(name="domain_path")
     private String domainPath;
 
+    @Column(name = "affinity_group_id")
+    private long affinityGroupId;
+
+    @Column(name = "affinity_group_uuid")
+    private String affinityGroupUuid;
+
 
     public DataCenterJoinVO() {
     }
@@ -302,5 +308,11 @@ public class DataCenterJoinVO extends BaseViewVO 
implements InternalIdentity, Id
                this.ip6Dns2 = ip6Dns2;
        }
 
+    public long getAffinityGroupId() {
+        return affinityGroupId;
+    }
 
+    public String getAffinityGroupUuid() {
+        return affinityGroupUuid;
+    }
 }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/431ea498/setup/db/db/schema-412to420.sql
----------------------------------------------------------------------
diff --git a/setup/db/db/schema-412to420.sql b/setup/db/db/schema-412to420.sql
index fa2988e..ac3fae9 100644
--- a/setup/db/db/schema-412to420.sql
+++ b/setup/db/db/schema-412to420.sql
@@ -2321,3 +2321,39 @@ INSERT IGNORE INTO `cloud`.`configuration` VALUES 
('Storage', 'DEFAULT', 'manage
 INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Storage', 'DEFAULT', 
'management-server', 'storage.cache.replacement.enabled', 'true', 'enable or 
disable cache storage replacement algorithm.');
 INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Storage', 'DEFAULT', 
'management-server', 'storage.cache.replacement.interval', '86400', 'time 
interval between cache replacement threads (in seconds).');
 
+DROP VIEW IF EXISTS `cloud`.`data_center_view`;
+CREATE VIEW `cloud`.`data_center_view` AS
+    select 
+        data_center.id,
+        data_center.uuid,
+        data_center.name,
+        data_center.is_security_group_enabled,
+        data_center.is_local_storage_enabled,
+        data_center.description,
+        data_center.dns1,
+        data_center.dns2,
+        data_center.ip6_dns1,
+        data_center.ip6_dns2,
+        data_center.internal_dns1,
+        data_center.internal_dns2,
+        data_center.guest_network_cidr,
+        data_center.domain,
+        data_center.networktype,
+        data_center.allocation_state,
+        data_center.zone_token,
+        data_center.dhcp_provider,
+        data_center.removed,
+        domain.id domain_id,
+        domain.uuid domain_uuid,
+        domain.name domain_name,
+        domain.path domain_path,
+               dedicated_resources.affinity_group_id,
+               affinity_group.uuid affinity_group_uuid
+    from
+        `cloud`.`data_center`
+            left join
+        `cloud`.`domain` ON data_center.domain_id = domain.id
+                       left join
+        `cloud`.`dedicated_resources` ON data_center.id = 
dedicated_resources.data_center_id
+                       left join
+        `cloud`.`affinity_group` ON dedicated_resources.affinity_group_id = 
affinity_group.id;
\ No newline at end of file

Reply via email to