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

git commit: refatcoring the monitors

Repository: stratos
Updated Branches:
  refs/heads/4.0.0-grouping 062cd7b40 -> 55e3eff1f


refatcoring the monitors


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

Branch: refs/heads/4.0.0-grouping
Commit: 55e3eff1fb0a8a341c1adc0f9122aaad33be0756
Parents: 062cd7b
Author: reka <rt...@gmail.com>
Authored: Wed Oct 29 15:40:54 2014 +0530
Committer: reka <rt...@gmail.com>
Committed: Wed Oct 29 15:40:54 2014 +0530

----------------------------------------------------------------------
 .../monitor/ParentComponentMonitor.java         | 10 +----
 .../monitor/application/ApplicationMonitor.java | 41 ++++++++---------
 .../autoscaler/monitor/group/GroupMonitor.java  | 47 +++++++++-----------
 3 files changed, 41 insertions(+), 57 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/55e3eff1/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 f6857f7..298516c 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
@@ -55,15 +55,7 @@ public abstract class ParentComponentMonitor extends Monitor {
         //Building the dependency for this monitor within the immediate children
         dependencyTree = DependencyBuilder.getInstance().buildDependency(component);
     }
-
-    /**
-     * Will monitor the immediate children upon any event triggers from parent/children
-     *
-     * @param statusEvent will be sent by parent/children with the current status
-     */
-    protected abstract void monitor(MonitorStatusEvent statusEvent);
-
-
+    
     /**
      * This will start the child monitors based on the active of siblings according to start up order
      *

http://git-wip-us.apache.org/repos/asf/stratos/blob/55e3eff1/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 337a5c5..35f4a70 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
@@ -22,7 +22,6 @@ 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.dependency.context.ApplicationContext;
 import org.apache.stratos.autoscaler.monitor.AbstractClusterMonitor;
 import org.apache.stratos.autoscaler.monitor.Monitor;
 import org.apache.stratos.autoscaler.monitor.MonitorStatusEventBuilder;
@@ -32,11 +31,13 @@ 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.*;
+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.lifecycle.LifeCycleState;
-import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
 
-import java.util.*;
+import java.util.Collection;
 
 /**
  * ApplicationMonitor is to control the child monitors
@@ -107,7 +108,7 @@ public class ApplicationMonitor extends ParentComponentMonitor {
     public Monitor findGroupMonitorWithId(String groupId) {
         Monitor monitor;
         monitor = findGroupMonitor(groupId, aliasToActiveMonitorsMap.values());
-        if(monitor == null) {
+        if (monitor == null) {
             monitor = findGroupMonitor(groupId, aliasToInActiveMonitorsMap.values());
         }
         return monitor;
@@ -145,28 +146,13 @@ public class ApplicationMonitor extends ParentComponentMonitor {
         log.info(String.format("[ApplicationMonitor] %s " +
                 "state changes from %s to %s", id, this.status, status));
 
-       this.status = status;
-       //notify the children about the state change
-       MonitorStatusEventBuilder.notifyChildren(this.parent, new ApplicationStatusEvent(status, appId));
+        this.status = status;
+        //notify the children about the state change
+        MonitorStatusEventBuilder.notifyChildren(this.parent, new ApplicationStatusEvent(status, appId));
     }
 
     @Override
     public void onChildEvent(MonitorStatusEvent statusEvent) {
-        monitor(statusEvent);
-    }
-
-    @Override
-    public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
-
-    }
-
-    @Override
-    public void onEvent(MonitorScalingEvent scalingEvent) {
-
-    }
-
-    @Override
-    protected void monitor(MonitorStatusEvent statusEvent) {
         String id = statusEvent.getId();
         LifeCycleState status1 = statusEvent.getStatus();
         //Events coming from parent are In_Active(in faulty detection), Scaling events, termination
@@ -191,6 +177,15 @@ public class ApplicationMonitor extends ParentComponentMonitor {
                 log.info("Executing the un-subscription request for the [monitor] " + id);
             }
         }
+    }
+
+    @Override
+    public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
+
+    }
+
+    @Override
+    public void onEvent(MonitorScalingEvent scalingEvent) {
 
     }
 }

http://git-wip-us.apache.org/repos/asf/stratos/blob/55e3eff1/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 2fe5ae7..64cc28c 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
@@ -25,7 +25,10 @@ import org.apache.stratos.autoscaler.exception.TopologyInConsistentException;
 import org.apache.stratos.autoscaler.monitor.EventHandler;
 import org.apache.stratos.autoscaler.monitor.MonitorStatusEventBuilder;
 import org.apache.stratos.autoscaler.monitor.ParentComponentMonitor;
-import org.apache.stratos.autoscaler.monitor.events.*;
+import org.apache.stratos.autoscaler.monitor.events.GroupStatusEvent;
+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.ClusterStatus;
 import org.apache.stratos.messaging.domain.topology.Group;
@@ -58,22 +61,6 @@ public class GroupMonitor extends ParentComponentMonitor implements EventHandler
 
     @Override
     public void onChildEvent(MonitorStatusEvent statusEvent) {
-        monitor(statusEvent);
-    }
-
-    @Override
-    public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
-        this.terminateChildren = true;
-
-    }
-
-    @Override
-    public void onEvent(MonitorScalingEvent scalingEvent) {
-
-    }
-
-    @Override
-    protected void monitor(MonitorStatusEvent statusEvent) {
         String id = statusEvent.getId();
         LifeCycleState status1 = statusEvent.getStatus();
         //Events coming from parent are In_Active(in faulty detection), Scaling events, termination
@@ -99,6 +86,16 @@ public class GroupMonitor extends ParentComponentMonitor implements EventHandler
                 log.info("Executing the un-subscription request for the [monitor] " + id);
             }
         }
+    }
+
+    @Override
+    public void onEvent(MonitorTerminateAllEvent terminateAllEvent) {
+        this.terminateChildren = true;
+
+    }
+
+    @Override
+    public void onEvent(MonitorScalingEvent scalingEvent) {
 
     }
 
@@ -139,14 +136,14 @@ public class GroupMonitor extends ParentComponentMonitor implements EventHandler
         log.info(String.format("[Monitor] %s is notifying the parent" +
                 "on its state change from %s to %s", id, this.status, status));
         //if(this.status != status) {
-            this.status = status;
-            //notifying the parent
-            if (status == GroupStatus.Inactive && !this.hasDependent) {
-                log.info("[Group] " + this.id + "is not notifying the parent, " +
-                        "since it is identified as the independent unit");
-            } else {
-                MonitorStatusEventBuilder.handleGroupStatusEvent(this.parent, this.status, this.id);
-            }
+        this.status = status;
+        //notifying the parent
+        if (status == GroupStatus.Inactive && !this.hasDependent) {
+            log.info("[Group] " + this.id + "is not notifying the parent, " +
+                    "since it is identified as the independent unit");
+        } else {
+            MonitorStatusEventBuilder.handleGroupStatusEvent(this.parent, this.status, this.id);
+        }
         //}
         //notify the children about the state change
         MonitorStatusEventBuilder.notifyChildren(this.parent, new GroupStatusEvent(status, getId()));