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/29 12:58:19 UTC

git commit: correcting an issue in notify child logic

Repository: stratos
Updated Branches:
  refs/heads/4.0.0-grouping e2994c4ff -> 3c43277e7


correcting an issue in notify child logic


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

Branch: refs/heads/4.0.0-grouping
Commit: 3c43277e73f2ab096a65f944d90d9e101c8c4e14
Parents: e2994c4
Author: Isuru Haththotuwa <is...@apache.org>
Authored: Wed Oct 29 17:27:57 2014 +0530
Committer: Isuru Haththotuwa <is...@apache.org>
Committed: Wed Oct 29 17:27:57 2014 +0530

----------------------------------------------------------------------
 .../monitor/ParentComponentMonitor.java         | 24 --------------------
 .../monitor/application/ApplicationMonitor.java |  5 ++++
 .../autoscaler/monitor/group/GroupMonitor.java  | 11 +++++++++
 3 files changed, 16 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/3c43277e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/ParentComponentMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/ParentComponentMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/ParentComponentMonitor.java
index 298516c..fa8f425 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/ParentComponentMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/ParentComponentMonitor.java
@@ -106,30 +106,6 @@ public abstract class ParentComponentMonitor extends Monitor {
         }
     }*/
 
-    @Override
-    public void onParentEvent(MonitorStatusEvent statusEvent) {
-
-        if (statusEvent.getStatus() == GroupStatus.Terminating || statusEvent.getStatus() ==
-                ApplicationStatus.Terminating) {
-
-            // parent monitor is in Terminating state. send Terminating event for all monitors
-            for (Monitor childMonitor : this.getAliasToActiveMonitorsMap().values()) {
-                if (childMonitor.hasActiveMonitors()) {
-                    // this is a Group Monitor, send Group Terminating
-                    StatusEventPublisher.sendGroupTerminatingEvent(appId, childMonitor.getId());
-                    markMonitorAsInactive(childMonitor.getId());
-                } else {
-                    // this is a Cluster Monitor, send Cluster Terminating
-                    StatusEventPublisher.sendClusterTerminatingEvent(appId,
-                            ((AbstractClusterMonitor) childMonitor).getServiceId(),
-                            ((AbstractClusterMonitor) childMonitor).getClusterId());
-                    markMonitorAsInactive(((AbstractClusterMonitor) childMonitor).getClusterId());
-                }
-
-            }
-        }
-    }
-
     // move to inactive monitors list to use in the Terminated event
     private synchronized void markMonitorAsInactive (String monitorKey) {
 

http://git-wip-us.apache.org/repos/asf/stratos/blob/3c43277e/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 dc53403..1ec7399 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
@@ -180,6 +180,11 @@ public class ApplicationMonitor extends ParentComponentMonitor {
     }
 
     @Override
+    public void onParentEvent(MonitorStatusEvent statusEvent) {
+        // nothing to do
+    }
+
+    @Override
     public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
 
     }

http://git-wip-us.apache.org/repos/asf/stratos/blob/3c43277e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java
index 64cc28c..9b9695a 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java
@@ -22,6 +22,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.exception.DependencyBuilderException;
 import org.apache.stratos.autoscaler.exception.TopologyInConsistentException;
+import org.apache.stratos.autoscaler.grouping.topic.StatusEventPublisher;
 import org.apache.stratos.autoscaler.monitor.EventHandler;
 import org.apache.stratos.autoscaler.monitor.MonitorStatusEventBuilder;
 import org.apache.stratos.autoscaler.monitor.ParentComponentMonitor;
@@ -30,6 +31,7 @@ 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.ApplicationStatus;
 import org.apache.stratos.messaging.domain.topology.ClusterStatus;
 import org.apache.stratos.messaging.domain.topology.Group;
 import org.apache.stratos.messaging.domain.topology.GroupStatus;
@@ -89,6 +91,15 @@ public class GroupMonitor extends ParentComponentMonitor implements EventHandler
     }
 
     @Override
+    public void onParentEvent(MonitorStatusEvent statusEvent) {
+        // send the ClusterTerminating event
+        if (statusEvent.getStatus() == GroupStatus.Terminating || statusEvent.getStatus() ==
+                ApplicationStatus.Terminating) {
+            StatusEventPublisher.sendGroupTerminatingEvent(appId, id);
+        }
+    }
+
+    @Override
     public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
         this.terminateChildren = true;