Replace terminate behavior Booleans by an Enum
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/3930b18b Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/3930b18b Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/3930b18b Branch: refs/heads/master Commit: 3930b18b03ec4b90957cadb8d93eb244f9ed593e Parents: 4d1504a Author: Lahiru Sandaruwan <[email protected]> Authored: Sat Nov 8 16:47:00 2014 +0530 Committer: Lahiru Sandaruwan <[email protected]> Committed: Sat Nov 8 16:47:00 2014 +0530 ---------------------------------------------------------------------- .../dependency/DependencyBuilder.java | 10 ++-- .../applications/dependency/DependencyTree.java | 51 +++++--------------- .../context/ApplicationContextFactory.java | 2 +- 3 files changed, 18 insertions(+), 45 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/3930b18b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java index 48c22fd..8a12b97 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyBuilder.java @@ -65,11 +65,11 @@ public class DependencyBuilder { String terminationBehaviour = dependencyOrder.getTerminationBehaviour(); if (Constants.TERMINATE_NONE.equals(terminationBehaviour)) { - dependencyTree.setKillNone(true); + dependencyTree.setTerminationBehavior(DependencyTree.TerminationBehavior.TERMINATE_NONE); } else if (Constants.TERMINATE_ALL.equals(terminationBehaviour)) { - dependencyTree.setKillAll(true); + dependencyTree.setTerminationBehavior(DependencyTree.TerminationBehavior.TERMINATE_ALL); } else if (Constants.TERMINATE_DEPENDENTS.equals(terminationBehaviour)) { - dependencyTree.setKillDependent(true); + dependencyTree.setTerminationBehavior(DependencyTree.TerminationBehavior.TERMINATE_DEPENDENT); } log.info("Setting the [terminationBehaviour] " + terminationBehaviour + " to the " + @@ -139,14 +139,14 @@ public class DependencyBuilder { for (Group group1 : component.getAliasToGroupMap().values()) { if (dependencyTree.findApplicationContextWithId(group1.getAlias()) == null) { ApplicationContext context = ApplicationContextFactory. - getGroupContext(group1.getAlias(), dependencyTree.isKillDependent()); + getGroupContext(group1.getAlias(), dependencyTree.isTerminateDependent()); dependencyTree.addApplicationContext(context); } } for (ClusterDataHolder dataHolder : component.getClusterDataMap().values()) { if (dependencyTree.findApplicationContextWithId(dataHolder.getClusterId()) == null) { ApplicationContext context = ApplicationContextFactory.getClusterContext(dataHolder, - dependencyTree.isKillDependent()); + dependencyTree.isTerminateDependent()); dependencyTree.addApplicationContext(context); } http://git-wip-us.apache.org/repos/asf/stratos/blob/3930b18b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyTree.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyTree.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyTree.java index 0cb9aa4..c1d0817 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyTree.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/DependencyTree.java @@ -37,11 +37,7 @@ public class DependencyTree { private boolean terminated; - private boolean killAll; - - private boolean killNone; - - private boolean killDependent; + private TerminationBehavior terminationBehavior; private boolean startupOder; @@ -191,14 +187,14 @@ public class DependencyTree { List<ApplicationContext> allChildrenOfAppContext = new ArrayList<ApplicationContext>(); ApplicationContext applicationContext = findApplicationContextWithId(id); - if (this.killDependent) { + if (terminationBehavior == TerminationBehavior.TERMINATE_DEPENDENT) { //finding the ApplicationContext of the given id //finding all the children of the found application context allChildrenOfAppContext.add(applicationContext); findAllChildrenOfAppContext(applicationContext.getApplicationContextList(), allChildrenOfAppContext); return allChildrenOfAppContext; - } else if (this.killAll) { + } else if (terminationBehavior == TerminationBehavior.TERMINATE_DEPENDENT) { //killall will be killed by the monitor from it's list. findAllChildrenOfAppContext(this.applicationContextList, allChildrenOfAppContext); @@ -224,44 +220,20 @@ public class DependencyTree { return childContexts; } - public boolean isKillAll() { - return killAll; - } - - public void setKillAll(boolean killAll) { - this.killAll = killAll; - } - - public boolean isKillNone() { - return killNone; - } - - public void setKillNone(boolean killNone) { - this.killNone = killNone; + public void setTerminationBehavior(TerminationBehavior terminationBehavior) { + this.terminationBehavior = terminationBehavior; } - public boolean isStarted() { - return started; + public boolean isTerminateDependent() { + return this.terminationBehavior == TerminationBehavior.TERMINATE_DEPENDENT; } - public void setStarted(boolean started) { - this.started = started; + public boolean isTerminateAll() { + return this.terminationBehavior == TerminationBehavior.TERMINATE_ALL; } - public boolean isTerminated() { - return terminated; - } - - public void setTerminated(boolean terminated) { - this.terminated = terminated; - } - - public boolean isKillDependent() { - return killDependent; - } - - public void setKillDependent(boolean killDependent) { - this.killDependent = killDependent; + public enum TerminationBehavior { + TERMINATE_ALL, TERMINATE_NONE, TERMINATE_DEPENDENT } public String getId() { @@ -287,4 +259,5 @@ public class DependencyTree { public void setReverseStartupOrder(boolean reverseStartupOrder) { this.reverseStartupOrder = reverseStartupOrder; } + } http://git-wip-us.apache.org/repos/asf/stratos/blob/3930b18b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationContextFactory.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationContextFactory.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationContextFactory.java index 62b2921..8141de5 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationContextFactory.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationContextFactory.java @@ -44,7 +44,7 @@ public class ApplicationContextFactory { DependencyTree tree) { String id; ApplicationContext applicationContext = null; - boolean isDependent = tree.isKillDependent() || tree.isKillAll(); + boolean isDependent = tree.isTerminateDependent() || tree.isTerminateAll(); if (order.startsWith(Constants.GROUP + ".")) { //getting the group alias id = getGroupFromStartupOrder(order);
