You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by la...@apache.org on 2015/03/20 11:58:36 UTC

stratos git commit: Fix volume information extraction after creation

Repository: stratos
Updated Branches:
  refs/heads/master c47cb1f66 -> 85f99e174


Fix volume information extraction after creation


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/85f99e17
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/85f99e17
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/85f99e17

Branch: refs/heads/master
Commit: 85f99e1745fc4474fbf4083eb9bce9bccd7d9245
Parents: c47cb1f
Author: Lahiru Sandaruwan <la...@apache.org>
Authored: Fri Mar 20 16:28:23 2015 +0530
Committer: Lahiru Sandaruwan <la...@apache.org>
Committed: Fri Mar 20 16:28:23 2015 +0530

----------------------------------------------------------------------
 .../services/impl/CloudControllerServiceImpl.java   | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/85f99e17/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
index 7825c11..bf584cf 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/services/impl/CloudControllerServiceImpl.java
@@ -431,14 +431,18 @@ public class CloudControllerServiceImpl implements CloudControllerService {
             iaas.setDynamicPayload(iaasProvider.getPayload());
 
             if (clusterContext.isVolumeRequired()) {
-                if (clusterContext.getVolumes() != null) {
-                    for (Volume volume : clusterContext.getVolumes()) {
-                        if (volume.getId() == null) {
+                
+                Volume[] volumes = clusterContext.getVolumes();
+                if (volumes != null) {
+                    for (int i = 0; i < volumes.length; i++) {
+
+                        if (volumes[i].getId() == null) {
                             // Create a new volume
-                            createVolumeAndSetInClusterContext(volume, iaasProvider);
+                            volumes[i] = createVolumeAndSetInClusterContext(volumes[i], iaasProvider);
                         }
                     }
                 }
+                clusterContext.setVolumes(volumes);
             }
 
             // Handle member created event
@@ -481,7 +485,7 @@ public class CloudControllerServiceImpl implements CloudControllerService {
         return memberContext;
     }
 
-    private void createVolumeAndSetInClusterContext(Volume volume,
+    private Volume createVolumeAndSetInClusterContext(Volume volume,
                                                     IaasProvider iaasProvider) {
         // iaas cannot be null at this state #startInstance method
         Iaas iaas = iaasProvider.getIaas();
@@ -499,6 +503,8 @@ public class CloudControllerServiceImpl implements CloudControllerService {
         }
 
         volume.setIaasType(iaasProvider.getType());
+
+        return volume;
     }