You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by is...@apache.org on 2014/10/22 13:25:26 UTC

git commit: implementing findClustersOfApplication in ApplicationMonitor

Repository: stratos
Updated Branches:
  refs/heads/4.0.0-grouping 76a91ea21 -> d5d98d4ef


implementing findClustersOfApplication in ApplicationMonitor


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

Branch: refs/heads/4.0.0-grouping
Commit: d5d98d4efff9d5f36f1c2d6d45ff2a671da2a012
Parents: 76a91ea
Author: Isuru Haththotuwa <is...@apache.org>
Authored: Wed Oct 22 16:54:48 2014 +0530
Committer: Isuru Haththotuwa <is...@apache.org>
Committed: Wed Oct 22 16:54:59 2014 +0530

----------------------------------------------------------------------
 .../monitor/application/ApplicationMonitor.java | 32 ++++++++++++--------
 .../lifecycle/LifeCycleStateManager.java        |  4 +--
 2 files changed, 21 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/d5d98d4e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/application/ApplicationMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/application/ApplicationMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/application/ApplicationMonitor.java
index b7db30b..deb0950 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/application/ApplicationMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/application/ApplicationMonitor.java
@@ -30,15 +30,11 @@ import org.apache.stratos.autoscaler.monitor.events.MonitorScalingEvent;
 import org.apache.stratos.autoscaler.monitor.events.MonitorStatusEvent;
 import org.apache.stratos.autoscaler.monitor.events.MonitorTerminateAllEvent;
 import org.apache.stratos.autoscaler.status.checker.StatusChecker;
-import org.apache.stratos.messaging.domain.topology.Application;
-import org.apache.stratos.messaging.domain.topology.ApplicationStatus;
-import org.apache.stratos.messaging.domain.topology.ClusterStatus;
-import org.apache.stratos.messaging.domain.topology.GroupStatus;
+import org.apache.stratos.messaging.domain.topology.*;
 import org.apache.stratos.messaging.domain.topology.lifecycle.LifeCycleState;
+import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
+import java.util.*;
 
 /**
  * ApplicationMonitor is to control the child monitors
@@ -67,13 +63,23 @@ public class ApplicationMonitor extends ParentComponentMonitor {
      */
     public List<String> findClustersOfApplication(String appId) {
         List<String> clusters = new ArrayList<String>();
-        //considering only one level
-        /*for (AbstractClusterMonitor monitor : this.clusterIdToClusterMonitorsMap.values()) {
-            clusters.add(monitor.getClusterId());
-        }*/
-        //TODO restart and read from Topology
-        return clusters;
+        Set<ClusterDataHolder> clusterData;
+
+        TopologyManager.acquireReadLockForApplication(appId);
+        try {
+            clusterData = TopologyManager.getTopology().getApplication(appId).getClusterDataRecursively();
+
+        } finally {
+            TopologyManager.releaseReadLockForApplication(appId);
+        }
 
+        if (clusterData != null) {
+            for (ClusterDataHolder clusterDataHolder : clusterData) {
+                clusters.add(clusterDataHolder.getClusterId());
+            }
+        }
+
+        return clusters;
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/stratos/blob/d5d98d4e/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/lifecycle/LifeCycleStateManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/lifecycle/LifeCycleStateManager.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/lifecycle/LifeCycleStateManager.java
index b1b0190..9151bb1 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/lifecycle/LifeCycleStateManager.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/domain/topology/lifecycle/LifeCycleStateManager.java
@@ -73,9 +73,9 @@ public class LifeCycleStateManager<T extends LifeCycleState> implements Serializ
         stateStack.push(nextState);
         if (log.isDebugEnabled()) {
             printStateTransitions(stateStack);
+//            log.debug("Life Cycle State changed from [ " + getPreviousState() + " ] to [ " +
+//                    getCurrentState() + " ]");
         }
-        log.info("Life Cycle State changed from [ " + getPreviousState() + " ] to [ " +
-                getCurrentState() + " ]");
     }
 
     /**