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() + " ]");
}
/**