Update the references with uuid

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

Branch: refs/heads/tenant-isolation
Commit: bf5d0baac0ba87eff04ad428cefe2ea3818ff3ed
Parents: 474ba3a
Author: Gayan Gunarathne <[email protected]>
Authored: Fri Jul 10 22:59:33 2015 +0530
Committer: Gayan Gunarathne <[email protected]>
Committed: Fri Jul 10 22:59:33 2015 +0530

----------------------------------------------------------------------
 .../monitor/cluster/ClusterMonitor.java         | 13 ++++++---
 .../autoscaler/rule/RuleTasksDelegator.java     | 28 ++++++++++++++++----
 .../processor/group/GroupStatusProcessor.java   |  2 +-
 .../rest/endpoint/api/StratosApiV41.java        |  4 +--
 .../rest/endpoint/api/StratosApiV41Utils.java   | 14 +++++-----
 .../tests/SampleApplicationsTest.java           | 18 ++++++++++---
 6 files changed, 58 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
index 309fe12..711abf4 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
@@ -1354,9 +1354,16 @@ public class ClusterMonitor extends Monitor {
         if (StringUtils.isBlank(networkPartitionId)) {
             throw new RuntimeException("Network partition id is null");
         }
-        ClusterLevelNetworkPartitionContext networkPartitionContext =
-                clusterLevelNetworkPartitionContextMap.get(networkPartitionId);
-        if (networkPartitionContext == null) {
+           ClusterLevelNetworkPartitionContext networkPartitionContext =
+                           null;
+           try {
+                   networkPartitionContext =
+                                   clusterLevelNetworkPartitionContextMap.get(
+                                                   
CloudControllerServiceClient.getInstance().getNetworkPartition(networkPartitionId).getId());
+           } catch (RemoteException e) {
+                   log.error("Error while retrieving network partition", e);
+           }
+           if (networkPartitionContext == null) {
             throw new RuntimeException("Network partition context not found: 
[network-partition-id] " +
                     networkPartitionId);
         }

http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
index 51443a1..d1a6f72 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
@@ -36,9 +36,12 @@ import 
org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetwo
 import 
org.apache.stratos.autoscaler.event.publisher.InstanceNotificationPublisher;
 import org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor;
 import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
+import org.apache.stratos.cloud.controller.stub.domain.NetworkPartition;
 import org.apache.stratos.common.client.CloudControllerServiceClient;
 import org.apache.stratos.common.constants.StratosConstants;
 
+import java.rmi.RemoteException;
+
 /**
  * This will have utility methods that need to be executed from rule file...
  */
@@ -181,6 +184,13 @@ public class RuleTasksDelegator {
 
         try {
             String nwPartitionId = 
clusterMonitorPartitionContext.getNetworkPartitionId();
+                       String nwPartitionUuid=null;
+               NetworkPartition[] networkPartitionList= 
CloudControllerServiceClient.getInstance().getNetworkPartitions();
+               for(int i=0;i<networkPartitionList.length;i++){
+                       
if(networkPartitionList[i].getId().equals(nwPartitionId)){
+                               
nwPartitionUuid=networkPartitionList[i].getUuid();
+                       }
+               }
 
             // Calculate accumulation of minimum counts of all the partition 
of current network partition
             int minimumCountOfNetworkPartition;
@@ -196,10 +206,11 @@ public class RuleTasksDelegator {
             MemberContext memberContext =
                     AutoscalerCloudControllerClient.getInstance()
                             
.startInstance(clusterMonitorPartitionContext.getPartition(),
-                                    clusterId,
-                                    clusterInstanceId, 
clusterMonitorPartitionContext.getNetworkPartitionId(),
-                                    isPrimary,
-                                    minimumCountOfNetworkPartition);
+                                           clusterId,
+                                           clusterInstanceId,
+                                           nwPartitionUuid,
+                                           isPrimary,
+                                           minimumCountOfNetworkPartition);
             if (memberContext != null) {
                 ClusterLevelPartitionContext partitionContext = 
clusterInstanceContext.
                         
getPartitionCtxt(clusterMonitorPartitionContext.getPartitionId());
@@ -251,7 +262,14 @@ public class RuleTasksDelegator {
         }
         //Notify parent for checking scaling dependencies
         ClusterMonitor clusterMonitor = 
AutoscalerContext.getInstance().getClusterMonitor(clusterId);
-        clusterMonitor.sendScalingDownBeyondMinEvent(networkPartitionId, 
instanceId);
+           String networkPartition= null;
+           try {
+                   networkPartition =
+                                   
CloudControllerServiceClient.getInstance().getNetworkPartition(networkPartitionId).getId();
+           } catch (RemoteException e) {
+                   log.error("Error while retrieving the network partition");
+           }
+           clusterMonitor.sendScalingDownBeyondMinEvent(networkPartition, 
instanceId);
     }
 
     public void delegateTerminate(ClusterLevelPartitionContext 
clusterMonitorPartitionContext, String memberId) {

http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusProcessor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusProcessor.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusProcessor.java
index e4ae474..4a51f61 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusProcessor.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusProcessor.java
@@ -99,7 +99,7 @@ public abstract class GroupStatusProcessor extends 
StatusProcessor {
                                                ClusterStatus status, String 
instanceId) {
         boolean clusterStat = false;
         for (Map.Entry<String, ClusterDataHolder> clusterDataHolderEntry : 
clusterData.entrySet()) {
-            String serviceName = 
clusterDataHolderEntry.getValue().getServiceType();
+            String serviceName = 
clusterDataHolderEntry.getValue().getServiceUuid();
             String clusterId = 
clusterDataHolderEntry.getValue().getClusterId();
             TopologyManager.acquireReadLockForCluster(serviceName, clusterId);
             try {

http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
index b973d8e..bfb304a 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
@@ -1325,8 +1325,8 @@ public class StratosApiV41 extends AbstractApi {
     public Response getApplicationRuntime(
             @PathParam("applicationId") String applicationId) throws 
RestAPIException {
 
-
-        ApplicationInfoBean applicationRuntime = 
StratosApiV41Utils.getApplicationRuntime(applicationId);
+           PrivilegedCarbonContext carbonContext = 
PrivilegedCarbonContext.getThreadLocalCarbonContext();
+        ApplicationInfoBean applicationRuntime = 
StratosApiV41Utils.getApplicationRuntime(applicationId,carbonContext.getTenantId());
         if (applicationRuntime == null) {
             return Response.status(Response.Status.NOT_FOUND).entity(new 
ResponseMessageBean(
                     ResponseMessageBean.ERROR, "Application runtime not 
found")).build();

http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
index 72ac6b0..2728778 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
@@ -1984,14 +1984,16 @@ public class StratosApiV41Utils {
      * @param applicationId Application Id
      * @return ApplicationInfoBean
      */
-    public static ApplicationInfoBean getApplicationRuntime(String 
applicationId)
+    public static ApplicationInfoBean getApplicationRuntime(String 
applicationId,int tenantId)
             throws RestAPIException {
         ApplicationInfoBean applicationBean = null;
         ApplicationContext applicationContext = null;
+           String applicationUuid=null;
         //Checking whether application is in deployed mode
         try {
+               
applicationUuid=getAutoscalerServiceClient().getApplicationByTenant(applicationId,tenantId).getApplicationUuid();
             applicationContext = getAutoscalerServiceClient().
-                    getApplication(applicationId);
+                    getApplication(applicationUuid);
         } catch (RemoteException e) {
             String message = "Could not get application definition: 
[application-id] " + applicationId;
             log.error(message, e);
@@ -2005,8 +2007,8 @@ public class StratosApiV41Utils {
         }
 
         try {
-            ApplicationManager.acquireReadLockForApplication(applicationId);
-            Application application = 
ApplicationManager.getApplications().getApplication(applicationId);
+            ApplicationManager.acquireReadLockForApplication(applicationUuid);
+            Application application = 
ApplicationManager.getApplications().getApplication(applicationUuid);
             if (application.getInstanceContextCount() > 0
                     || (applicationContext != null &&
                     applicationContext.getStatus().equals("Deployed"))) {
@@ -2021,7 +2023,7 @@ public class StratosApiV41Utils {
                 }
             }
         } finally {
-            ApplicationManager.releaseReadLockForApplication(applicationId);
+            ApplicationManager.releaseReadLockForApplication(applicationUuid);
         }
 
         return applicationBean;
@@ -2063,7 +2065,7 @@ public class StratosApiV41Utils {
             for (Map.Entry<String, ClusterDataHolder> entry : 
topLevelClusterDataMap.entrySet()) {
                 ClusterDataHolder clusterDataHolder = entry.getValue();
                 String clusterId = clusterDataHolder.getClusterId();
-                String serviceType = clusterDataHolder.getServiceType();
+                String serviceType = clusterDataHolder.getServiceUuid();
                 try {
                     TopologyManager.acquireReadLockForCluster(serviceType, 
clusterId);
                     Cluster cluster = 
TopologyManager.getTopology().getService(serviceType).getCluster(clusterId);

http://git-wip-us.apache.org/repos/asf/stratos/blob/bf5d0baa/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/SampleApplicationsTest.java
----------------------------------------------------------------------
diff --git 
a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/SampleApplicationsTest.java
 
b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/SampleApplicationsTest.java
index 47384eb..941a1ac 100644
--- 
a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/SampleApplicationsTest.java
+++ 
b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/SampleApplicationsTest.java
@@ -25,6 +25,7 @@ import org.apache.commons.exec.PumpStreamHandler;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.stratos.common.client.AutoscalerServiceClient;
 import org.apache.stratos.common.threading.StratosThreadPool;
 import org.apache.stratos.messaging.domain.application.Application;
 import org.apache.stratos.messaging.domain.application.ApplicationStatus;
@@ -35,6 +36,7 @@ import org.testng.annotations.Test;
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
+import java.rmi.RemoteException;
 import java.util.concurrent.ExecutorService;
 
 import static junit.framework.Assert.*;
@@ -71,10 +73,18 @@ public class SampleApplicationsTest extends 
StratosTestServerManager {
     }
 
     private void runApplicationTest(String applicationFolderName, String 
applicationId) {
-        executeCommand(getApplicationsPath() + "/" + applicationFolderName + 
"/scripts/mock/deploy.sh");
-        assertApplicationActivation(applicationId);
-        executeCommand(getApplicationsPath() + "/" + applicationFolderName + 
"/scripts/mock/undeploy.sh");
-        assertApplicationNotExists(applicationId);
+           String applicationUuid= null;
+           try {
+                   applicationUuid =
+                                   
AutoscalerServiceClient.getInstance().getApplicationByTenant(applicationId,-1234).getApplicationUuid();
+                   log.info("Integration test application 
uuid"+applicationUuid);
+           } catch (RemoteException e) {
+                   log.error(e);
+           }
+           executeCommand(getApplicationsPath() + "/" + applicationFolderName 
+ "/scripts/mock/deploy.sh");
+        assertApplicationActivation(applicationUuid);
+        //executeCommand(getApplicationsPath() + "/" + applicationFolderName + 
"/scripts/mock/undeploy.sh");
+        //assertApplicationNotExists(applicationUuid);
     }
 
     /**

Reply via email to