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 2015/07/29 12:55:26 UTC
[05/12] stratos git commit: Merging parent and cluster level
networkPartitionContext to networkPartitionContext
Merging parent and cluster level networkPartitionContext to networkPartitionContext
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/f1e5488e
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/f1e5488e
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/f1e5488e
Branch: refs/heads/master
Commit: f1e5488e59cb74d36e7657e013e1b8abae5f1da8
Parents: 0f2b3c7
Author: reka <rt...@gmail.com>
Authored: Mon Jul 27 15:15:56 2015 +0530
Committer: reka <rt...@gmail.com>
Committed: Wed Jul 29 16:11:07 2015 +0530
----------------------------------------------------------------------
.../applications/topic/ApplicationBuilder.java | 11 +-
.../context/cluster/ClusterContext.java | 34 +-
.../ClusterLevelNetworkPartitionContext.java | 92 ----
.../network/NetworkPartitionContext.java | 328 +++++++++++++-
.../ParentLevelNetworkPartitionContext.java | 437 -------------------
.../monitor/cluster/ClusterMonitor.java | 23 +-
.../monitor/component/ApplicationMonitor.java | 22 +-
.../monitor/component/GroupMonitor.java | 56 ++-
.../component/ParentComponentMonitor.java | 5 +-
.../autoscaler/rule/RuleTasksDelegator.java | 5 +-
.../services/impl/AutoscalerServiceImpl.java | 13 +-
.../cluster/ClusterStatusActiveProcessor.java | 4 +-
.../cluster/ClusterStatusInactiveProcessor.java | 4 +-
.../ClusterStatusTerminatedProcessor.java | 4 +-
.../stratos/autoscaler/util/AutoscalerUtil.java | 8 +-
15 files changed, 411 insertions(+), 635 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/topic/ApplicationBuilder.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/topic/ApplicationBuilder.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/topic/ApplicationBuilder.java
index 5b5ec90..686e158 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/topic/ApplicationBuilder.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/topic/ApplicationBuilder.java
@@ -25,7 +25,6 @@ import org.apache.stratos.autoscaler.applications.pojo.ApplicationClusterContext
import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
import org.apache.stratos.autoscaler.client.AutoscalerCloudControllerClient;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
-import org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext;
import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.monitor.Monitor;
@@ -428,8 +427,8 @@ public class ApplicationBuilder {
monitor1.destroy();
}
}
- org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext networkPartitionContext =
- (org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext) monitor.
+ org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext networkPartitionContext =
+ (org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext) monitor.
getNetworkPartitionContext(groupInstance.getNetworkPartitionId());
networkPartitionContext.removeInstanceContext(instanceId);
if (groupInstance.getPartitionId() != null) {
@@ -659,7 +658,7 @@ public class ApplicationBuilder {
ApplicationMonitor applicationMonitor = AutoscalerContext.getInstance().getAppMonitor(appId);
if (applicationMonitor != null) {
- ParentLevelNetworkPartitionContext context = (ParentLevelNetworkPartitionContext)
+ NetworkPartitionContext context = (NetworkPartitionContext)
applicationMonitor.getNetworkPartitionContext(networkPartitionId);
if (status == ApplicationStatus.Active) {
if (log.isDebugEnabled()) {
@@ -700,8 +699,8 @@ public class ApplicationBuilder {
String instanceId, String parentInstanceId) {
GroupMonitor monitor = getGroupMonitor(appId, groupId);
if (monitor != null) {
- org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext context
- = (org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext) monitor.getNetworkPartitionContext(networkPartitionId);
+ org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext context
+ = (org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext) monitor.getNetworkPartitionContext(networkPartitionId);
if (status == GroupStatus.Active) {
if (log.isDebugEnabled()) {
log.debug("Moving pending group instance to active list in [group] " + groupId
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContext.java
index f7f2fc6..235b7b7 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContext.java
@@ -23,7 +23,7 @@ import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.applications.ApplicationHolder;
import org.apache.stratos.autoscaler.context.member.MemberStatsContext;
import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
+import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.exception.AutoScalerException;
import org.apache.stratos.autoscaler.exception.partition.PartitionValidationException;
import org.apache.stratos.autoscaler.exception.policy.PolicyValidationException;
@@ -56,7 +56,7 @@ public class ClusterContext extends AbstractClusterContext {
private static final Log log = LogFactory.getLog(ClusterContext.class);
// Map<NetworkpartitionId, Network Partition Context>
- protected Map<String, ClusterLevelNetworkPartitionContext> networkPartitionCtxts;
+ protected Map<String, NetworkPartitionContext> networkPartitionCtxts;
private String autoscalingPolicyId;
@@ -66,12 +66,12 @@ public class ClusterContext extends AbstractClusterContext {
boolean hasScalingDependents, String deploymentPolicyId) {
super(clusterId, serviceId);
- this.networkPartitionCtxts = new ConcurrentHashMap<String, ClusterLevelNetworkPartitionContext>();
+ this.networkPartitionCtxts = new ConcurrentHashMap<String, NetworkPartitionContext>();
this.autoscalingPolicyId = autoscalingPolicyId;
this.deploymentPolicyId = deploymentPolicyId;
}
- public Map<String, ClusterLevelNetworkPartitionContext> getNetworkPartitionCtxts() {
+ public Map<String, NetworkPartitionContext> getNetworkPartitionCtxts() {
return networkPartitionCtxts;
}
@@ -79,11 +79,11 @@ public class ClusterContext extends AbstractClusterContext {
return PolicyManager.getInstance().getAutoscalePolicy(autoscalingPolicyId);
}
- public ClusterLevelNetworkPartitionContext getNetworkPartitionCtxt(String networkPartitionId) {
+ public NetworkPartitionContext getNetworkPartitionCtxt(String networkPartitionId) {
return networkPartitionCtxts.get(networkPartitionId);
}
- public void setPartitionCtxt(Map<String, ClusterLevelNetworkPartitionContext> partitionCtxt) {
+ public void setPartitionCtxt(Map<String, NetworkPartitionContext> partitionCtxt) {
this.networkPartitionCtxts = partitionCtxt;
}
@@ -91,15 +91,15 @@ public class ClusterContext extends AbstractClusterContext {
return networkPartitionCtxts.containsKey(partitionId);
}
- public void addNetworkPartitionCtxt(ClusterLevelNetworkPartitionContext ctxt) {
+ public void addNetworkPartitionCtxt(NetworkPartitionContext ctxt) {
this.networkPartitionCtxts.put(ctxt.getId(), ctxt);
}
- public ClusterLevelNetworkPartitionContext getPartitionCtxt(String id) {
+ public NetworkPartitionContext getPartitionCtxt(String id) {
return this.networkPartitionCtxts.get(id);
}
- public ClusterLevelNetworkPartitionContext getNetworkPartitionCtxt(Member member) {
+ public NetworkPartitionContext getNetworkPartitionCtxt(Member member) {
String networkPartitionId = member.getNetworkPartitionId();
if (networkPartitionCtxts.containsKey(networkPartitionId)) {
@@ -112,7 +112,7 @@ public class ClusterContext extends AbstractClusterContext {
public void addInstanceContext(String instanceId, Cluster cluster, boolean hasScalingDependents,
boolean groupScalingEnabledSubtree)
throws PolicyValidationException, PartitionValidationException {
- ClusterLevelNetworkPartitionContext networkPartitionContext = null;
+ NetworkPartitionContext networkPartitionContext = null;
ClusterInstance clusterInstance = cluster.getInstanceContexts(instanceId);
String deploymentPolicyName = AutoscalerUtil.getDeploymentPolicyIdByAlias(cluster.getAppId(),
@@ -137,11 +137,11 @@ public class ClusterContext extends AbstractClusterContext {
if (networkPartition == null) {
//Parent should have the partition specified
- networkPartitionContext = new ClusterLevelNetworkPartitionContext(
+ networkPartitionContext = new NetworkPartitionContext(
clusterInstance.getNetworkPartitionId());
} else {
- networkPartitionContext = new ClusterLevelNetworkPartitionContext(networkPartition.getId(),
- networkPartition.getPartitionAlgo(), 0);
+ networkPartitionContext = new NetworkPartitionContext(networkPartition.getId(),
+ networkPartition.getPartitionAlgo());
}
}
@@ -167,10 +167,10 @@ public class ClusterContext extends AbstractClusterContext {
}
- private ClusterLevelNetworkPartitionContext parseDeploymentPolicy(
+ private NetworkPartitionContext parseDeploymentPolicy(
ClusterInstance clusterInstance,
Cluster cluster,
- ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
+ NetworkPartitionContext clusterLevelNetworkPartitionContext,
boolean hasGroupScalingDependent, boolean groupScalingEnabledSubtree)
throws PolicyValidationException, PartitionValidationException {
@@ -224,10 +224,10 @@ public class ClusterContext extends AbstractClusterContext {
return clusterLevelNetworkPartitionContext;
}
- private ClusterLevelNetworkPartitionContext addPartition(
+ private NetworkPartitionContext addPartition(
ClusterInstance clusterInstance,
Cluster cluster,
- ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
+ NetworkPartitionContext clusterLevelNetworkPartitionContext,
PartitionRef partition,
boolean hasScalingDependents, boolean groupScalingEnabledSubtree)
throws PolicyValidationException, PartitionValidationException {
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ClusterLevelNetworkPartitionContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ClusterLevelNetworkPartitionContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ClusterLevelNetworkPartitionContext.java
deleted file mode 100644
index 6ea75fe..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ClusterLevelNetworkPartitionContext.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.stratos.autoscaler.context.partition.network;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import java.io.Serializable;
-
-/**
- * Holds runtime data of a network partition.
- */
-public class ClusterLevelNetworkPartitionContext extends NetworkPartitionContext implements Serializable {
-
- private static final Log log = LogFactory.getLog(ClusterLevelNetworkPartitionContext.class);
- private static final long serialVersionUID = 572769304374110159L;
-
- private String partitionAlgorithm;
- private int min;
-
- public ClusterLevelNetworkPartitionContext(String id, String partitionAlgorithm, int min) {
- super(id);
- this.partitionAlgorithm = partitionAlgorithm;
- this.min = min;
-
- }
-
- public ClusterLevelNetworkPartitionContext(String id) {
- super(id);
- }
-
-
- public int hashCode() {
-
- final int prime = 31;
- int result = 1;
- result = prime * result + ((this.getId() == null) ? 0 : this.getId().hashCode());
- return result;
-
- }
-
- public boolean equals(final Object obj) {
-
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (!(obj instanceof ClusterLevelNetworkPartitionContext)) {
- return false;
- }
- final ClusterLevelNetworkPartitionContext other = (ClusterLevelNetworkPartitionContext) obj;
- if (this.getId() == null) {
- if (other.getId() != null) {
- return false;
- }
- } else if (!this.getId().equals(other.getId())) {
- return false;
- }
- return true;
- }
-
-
- public String getId() {
- return super.getId();
- }
-
- public int getMin() {
- return min;
- }
-
- public String getPartitionAlgorithm() {
- return partitionAlgorithm;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/NetworkPartitionContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/NetworkPartitionContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/NetworkPartitionContext.java
index 4335f01..b92032e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/NetworkPartitionContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/NetworkPartitionContext.java
@@ -21,6 +21,7 @@ package org.apache.stratos.autoscaler.context.partition.network;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.context.InstanceContext;
+import org.apache.stratos.autoscaler.context.partition.GroupLevelPartitionContext;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
@@ -28,18 +29,325 @@ import java.util.concurrent.ConcurrentHashMap;
/**
* This will keep track of network partition level information.
*/
-public abstract class NetworkPartitionContext {
+public class NetworkPartitionContext {
private static final Log log = LogFactory.getLog(NetworkPartitionContext.class);
//id of the network partition context
- protected final String id;
+ private String id;
//group instances kept inside a partition
- protected Map<String, InstanceContext> instanceIdToInstanceContextMap;
- private int pendingMembersFailureCount = 0;
+ private Map<String, InstanceContext> instanceIdToInstanceContextMap;
+ //network partition level min and max
+ private int minInstanceCount = 0, maxInstanceCount = 0;
+ //active instances
+ private List<InstanceContext> activeInstances;
+ //pending instances
+ private List<InstanceContext> pendingInstances;
+ //terminating pending instances
+ private List<InstanceContext> terminatingPending;
+ //partition algorithm
+ private String partitionAlgorithm;
+ //partition min
+ private int min;
- protected NetworkPartitionContext(String id) {
+ //Group level partition contexts
+ private List<GroupLevelPartitionContext> partitionContexts;
+
+ public NetworkPartitionContext(String id, String partitionAlgo) {
+ this.id = id;
+ this.partitionAlgorithm = partitionAlgo;
+ partitionContexts = new ArrayList<GroupLevelPartitionContext>();
+ pendingInstances = new ArrayList<InstanceContext>();
+ activeInstances = new ArrayList<InstanceContext>();
+ terminatingPending = new ArrayList<InstanceContext>();
+
+ }
+
+ public NetworkPartitionContext(String id) {
this.id = id;
- instanceIdToInstanceContextMap = new ConcurrentHashMap<String, InstanceContext>();
+ partitionContexts = new ArrayList<GroupLevelPartitionContext>();
+ pendingInstances = new ArrayList<InstanceContext>();
+ activeInstances = new ArrayList<InstanceContext>();
+ terminatingPending = new ArrayList<InstanceContext>();
+ }
+
+
+ public int getMinInstanceCount() {
+ return minInstanceCount;
+ }
+
+ public void setMinInstanceCount(int minInstanceCount) {
+ this.minInstanceCount = minInstanceCount;
+ }
+
+ public int getMaxInstanceCount() {
+ return maxInstanceCount;
+ }
+
+ public void setMaxInstanceCount(int maxInstanceCount) {
+ this.maxInstanceCount = maxInstanceCount;
+ }
+
+ public int hashCode() {
+
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((id == null) ? 0 : id.hashCode());
+ return result;
+
+ }
+
+ public boolean equals(final Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public String toString() {
+ return "NetworkPartitionContext [id=" + id + "partitionAlgorithm=" + partitionAlgorithm + ", minInstanceCount=" +
+ minInstanceCount + ", maxInstanceCount=" + maxInstanceCount + "]";
+ }
+
+
+ public String getPartitionAlgorithm() {
+ return partitionAlgorithm;
+ }
+
+ public List<InstanceContext> getInstanceIdToInstanceContextMap(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+ for(InstanceContext instanceContext : instanceIdToInstanceContextMap.values()) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts;
+ }
+
+ public List<GroupLevelPartitionContext> getPartitionCtxts() {
+
+ return partitionContexts;
+ }
+
+ public GroupLevelPartitionContext getPartitionCtxt(String partitionId) {
+
+ for (GroupLevelPartitionContext partitionContext : partitionContexts) {
+ if (partitionContext.getPartitionId().equals(partitionId)) {
+ return partitionContext;
+ }
+ }
+ return null;
+ }
+
+ public void addPartitionContext(GroupLevelPartitionContext partitionContext) {
+ partitionContexts.add(partitionContext);
+ }
+
+
+ public GroupLevelPartitionContext getPartitionContextById(String partitionId) {
+ for (GroupLevelPartitionContext partitionContext : partitionContexts) {
+ if (partitionContext.getPartitionId().equals(partitionId)) {
+ return partitionContext;
+ }
+ }
+ return null;
+ }
+
+ public List<InstanceContext> getActiveInstances(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+ for(InstanceContext instanceContext : activeInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts;
+ }
+
+ public List<InstanceContext> getPendingInstances(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+ for(InstanceContext instanceContext : pendingInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts;
+ }
+
+ public void addPendingInstance(InstanceContext context) {
+ this.pendingInstances.add(context);
+ }
+
+ public int getPendingInstancesCount() {
+ return this.pendingInstances.size();
+ }
+
+ public int getPendingInstancesCount(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+ for(InstanceContext instanceContext : pendingInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts.size();
+ }
+
+
+ public int getActiveInstancesCount() {
+ return this.activeInstances.size();
+ }
+
+ public int getActiveInstancesCount(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+ for(InstanceContext instanceContext : activeInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts.size();
+ }
+
+ public InstanceContext getActiveInstance(String instanceId) {
+ for (InstanceContext instanceContext : activeInstances) {
+ if (instanceId.equals(instanceContext.getId())) {
+ return instanceContext;
+ }
+ }
+ return null;
+ }
+
+ public InstanceContext getPendingInstance(String instanceId) {
+ for (InstanceContext instanceContext : pendingInstances) {
+ if (instanceId.equals(instanceContext.getId())) {
+ return instanceContext;
+ }
+ }
+ return null;
+ }
+
+
+ public void movePendingInstanceToActiveInstances(String instanceId) {
+ if (instanceId == null) {
+ return;
+ }
+ synchronized (pendingInstances) {
+ Iterator<InstanceContext> iterator = pendingInstances.listIterator();
+ while (iterator.hasNext()) {
+ InstanceContext pendingInstance = iterator.next();
+ if (pendingInstance == null) {
+ iterator.remove();
+ continue;
+ }
+ if (instanceId.equals(pendingInstance.getId())) {
+ // member is activated
+ // remove from pending list
+ iterator.remove();
+ // add to the activated list
+ this.activeInstances.add(pendingInstance);
+ if (log.isDebugEnabled()) {
+ log.debug(String.format("Pending instance is removed and added to the " +
+ "activated instance list. [Instance Id] %s", instanceId));
+ }
+ break;
+ }
+ }
+ }
+ }
+
+ public void moveActiveInstanceToTerminationPendingInstances(String instanceId) {
+ if (instanceId == null) {
+ return;
+ }
+ synchronized (activeInstances) {
+ Iterator<InstanceContext> iterator = activeInstances.listIterator();
+ while (iterator.hasNext()) {
+ InstanceContext activeInstance = iterator.next();
+ if (activeInstance == null) {
+ iterator.remove();
+ continue;
+ }
+ if (instanceId.equals(activeInstance.getId())) {
+ // member is activated
+ // remove from pending list
+ iterator.remove();
+ // add to the activated list
+ this.terminatingPending.add(activeInstance);
+ if (log.isDebugEnabled()) {
+ log.debug(String.format("Active instance is removed and added to the " +
+ "termination pending instance list. [Instance Id] %s", instanceId));
+ }
+ break;
+ }
+ }
+ }
+ }
+
+ public void movePendingInstanceToTerminationPendingInstances(String instanceId) {
+ if (instanceId == null) {
+ return;
+ }
+ synchronized (pendingInstances) {
+ Iterator<InstanceContext> iterator = pendingInstances.listIterator();
+ while (iterator.hasNext()) {
+ InstanceContext pendingInstance = iterator.next();
+ if (pendingInstance == null) {
+ iterator.remove();
+ continue;
+ }
+ if (instanceId.equals(pendingInstance.getId())) {
+ // member is activated
+ // remove from pending list
+ iterator.remove();
+ // add to the activated list
+ this.terminatingPending.add(pendingInstance);
+ if (log.isDebugEnabled()) {
+ log.debug(String.format("Pending instance is removed and added to the " +
+ "termination pending instance list. [Instance Id] %s", instanceId));
+ }
+ break;
+ }
+ }
+ }
+ }
+
+ public int getNonTerminatedInstancesCount() {
+ return this.activeInstances.size() + this.pendingInstances.size();
+ }
+
+ public int getNonTerminatedInstancesCount(String parentInstanceId) {
+ List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
+
+ for(InstanceContext instanceContext : activeInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+
+ for(InstanceContext instanceContext : pendingInstances) {
+ if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
+ instanceContexts.add(instanceContext);
+ }
+ }
+ return instanceContexts.size();
+ }
+
+ public boolean removeTerminationPendingInstance(String instanceId) {
+ if (id == null) {
+ return false;
+ }
+ synchronized (pendingInstances) {
+ for (Iterator<InstanceContext> iterator = pendingInstances.iterator(); iterator.hasNext(); ) {
+ InstanceContext pendingInstance = iterator.next();
+ if (id.equals(pendingInstance.getId())) {
+ iterator.remove();
+ return true;
+ }
+
+ }
+ }
+ return false;
}
public String getId() {
@@ -70,4 +378,12 @@ public abstract class NetworkPartitionContext {
public boolean containsInstanceContext(String instanceId) {
return this.instanceIdToInstanceContextMap.containsKey(instanceId);
}
+
+ public int getMin() {
+ return min;
+ }
+
+ public void setMin(int min) {
+ this.min = min;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ParentLevelNetworkPartitionContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ParentLevelNetworkPartitionContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ParentLevelNetworkPartitionContext.java
deleted file mode 100644
index 3367e7a..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/partition/network/ParentLevelNetworkPartitionContext.java
+++ /dev/null
@@ -1,437 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.stratos.autoscaler.context.partition.network;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.autoscaler.context.InstanceContext;
-import org.apache.stratos.autoscaler.context.partition.GroupLevelPartitionContext;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/**
- * Holds runtime data of a network partition.
- */
-public class ParentLevelNetworkPartitionContext extends NetworkPartitionContext implements Serializable {
- private static final Log log = LogFactory.getLog(ParentLevelNetworkPartitionContext.class);
- private int scaleDownRequestsCount = 0;
-
- private int minInstanceCount = 0, maxInstanceCount = 0;
- private int requiredInstanceCountBasedOnStats;
- private int requiredInstanceCountBasedOnDependencies;
-
- //active instances
- private List<InstanceContext> activeInstances;
- //pending instances
- private List<InstanceContext> pendingInstances;
- //terminating pending instances
- private List<InstanceContext> terminatingPending;
- private String partitionAlgorithm;
-
- //Group level partition contexts
- private List<GroupLevelPartitionContext> partitionContexts;
-
- //details required for partition selection algorithms
- private int currentPartitionIndex;
-
-
- public ParentLevelNetworkPartitionContext(String id, String partitionAlgo) {
- super(id);
- this.partitionAlgorithm = partitionAlgo;
- partitionContexts = new ArrayList<GroupLevelPartitionContext>();
- requiredInstanceCountBasedOnStats = minInstanceCount;
- requiredInstanceCountBasedOnDependencies = minInstanceCount;
- pendingInstances = new ArrayList<InstanceContext>();
- activeInstances = new ArrayList<InstanceContext>();
- terminatingPending = new ArrayList<InstanceContext>();
-
- }
-
- public ParentLevelNetworkPartitionContext(String id) {
- super(id);
- partitionContexts = new ArrayList<GroupLevelPartitionContext>();
- requiredInstanceCountBasedOnStats = minInstanceCount;
- requiredInstanceCountBasedOnDependencies = minInstanceCount;
- pendingInstances = new ArrayList<InstanceContext>();
- activeInstances = new ArrayList<InstanceContext>();
- terminatingPending = new ArrayList<InstanceContext>();
- }
-
-
- public int getMinInstanceCount() {
- return minInstanceCount;
- }
-
- public void setMinInstanceCount(int minInstanceCount) {
- this.minInstanceCount = minInstanceCount;
- }
-
- public int getMaxInstanceCount() {
- return maxInstanceCount;
- }
-
- public void setMaxInstanceCount(int maxInstanceCount) {
- this.maxInstanceCount = maxInstanceCount;
- }
-
- public int hashCode() {
-
- final int prime = 31;
- int result = 1;
- result = prime * result + ((super.getId() == null) ? 0 : super.getId().hashCode());
- return result;
-
- }
-
- public boolean equals(final Object obj) {
-
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (!(obj instanceof ParentLevelNetworkPartitionContext)) {
- return false;
- }
- final ParentLevelNetworkPartitionContext other = (ParentLevelNetworkPartitionContext) obj;
- if (super.getId() == null) {
- if (super.getId() != null) {
- return false;
- }
- } else if (!super.getId().equals(super.getId())) {
- return false;
- }
- return true;
- }
-
- @Override
- public String toString() {
- return "NetworkPartitionContext [id=" + super.getId() + "partitionAlgorithm=" + partitionAlgorithm + ", minInstanceCount=" +
- minInstanceCount + ", maxInstanceCount=" + maxInstanceCount + "]";
- }
-
- public int getCurrentPartitionIndex() {
- return currentPartitionIndex;
- }
-
- public void setCurrentPartitionIndex(int currentPartitionIndex) {
- this.currentPartitionIndex = currentPartitionIndex;
- }
-
- public String getId() {
- return super.getId();
- }
-
-
- public String getPartitionAlgorithm() {
- return partitionAlgorithm;
- }
-
- public int getScaleDownRequestsCount() {
- return scaleDownRequestsCount;
- }
-
- public void resetScaleDownRequestsCount() {
- this.scaleDownRequestsCount = 0;
- }
-
- public void increaseScaleDownRequestsCount() {
- this.scaleDownRequestsCount += 1;
- }
-
- public float getRequiredInstanceCountBasedOnStats() {
- return requiredInstanceCountBasedOnStats;
- }
-
- public void setRequiredInstanceCountBasedOnStats(int requiredInstanceCountBasedOnStats) {
- this.requiredInstanceCountBasedOnStats = requiredInstanceCountBasedOnStats;
- }
-
- public List<InstanceContext> getInstanceIdToInstanceContextMap(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
- for(InstanceContext instanceContext : instanceIdToInstanceContextMap.values()) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts;
- }
-
- public int getRequiredInstanceCountBasedOnDependencies() {
- return requiredInstanceCountBasedOnDependencies;
- }
-
- public void setRequiredInstanceCountBasedOnDependencies(int requiredInstanceCountBasedOnDependencies) {
- this.requiredInstanceCountBasedOnDependencies = requiredInstanceCountBasedOnDependencies;
- }
-
- public List<GroupLevelPartitionContext> getPartitionCtxts() {
-
- return partitionContexts;
- }
-
- public GroupLevelPartitionContext getPartitionCtxt(String partitionId) {
-
- for (GroupLevelPartitionContext partitionContext : partitionContexts) {
- if (partitionContext.getPartitionId().equals(partitionId)) {
- return partitionContext;
- }
- }
- return null;
- }
-
- public void addPartitionContext(GroupLevelPartitionContext partitionContext) {
- partitionContexts.add(partitionContext);
- }
-
-
- public GroupLevelPartitionContext getPartitionContextById(String partitionId) {
- for (GroupLevelPartitionContext partitionContext : partitionContexts) {
- if (partitionContext.getPartitionId().equals(partitionId)) {
- return partitionContext;
- }
- }
- return null;
- }
-
- public List<InstanceContext> getActiveInstances() {
- return activeInstances;
- }
-
- public List<InstanceContext> getActiveInstances(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
- for(InstanceContext instanceContext : activeInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts;
- }
-
- public void setActiveInstances(List<InstanceContext> activeInstances) {
- this.activeInstances = activeInstances;
- }
-
- public List<InstanceContext> getPendingInstances() {
- return pendingInstances;
- }
-
- public List<InstanceContext> getPendingInstances(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
- for(InstanceContext instanceContext : pendingInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts;
- }
-
- public void setPendingInstances(List<InstanceContext> pendingInstances) {
- this.pendingInstances = pendingInstances;
- }
-
- public void addPendingInstance(InstanceContext context) {
- this.pendingInstances.add(context);
- }
-
- public int getPendingInstancesCount() {
- return this.pendingInstances.size();
- }
-
- public int getPendingInstancesCount(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
- for(InstanceContext instanceContext : pendingInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts.size();
- }
-
-
- public int getActiveInstancesCount() {
- return this.activeInstances.size();
- }
-
- public int getActiveInstancesCount(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
- for(InstanceContext instanceContext : activeInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts.size();
- }
-
- public InstanceContext getActiveInstance(String instanceId) {
- for (InstanceContext instanceContext : activeInstances) {
- if (instanceId.equals(instanceContext.getId())) {
- return instanceContext;
- }
- }
- return null;
- }
-
- public InstanceContext getPendingInstance(String instanceId) {
- for (InstanceContext instanceContext : pendingInstances) {
- if (instanceId.equals(instanceContext.getId())) {
- return instanceContext;
- }
- }
- return null;
- }
-
-
- public void movePendingInstanceToActiveInstances(String instanceId) {
- if (instanceId == null) {
- return;
- }
- synchronized (pendingInstances) {
- Iterator<InstanceContext> iterator = pendingInstances.listIterator();
- while (iterator.hasNext()) {
- InstanceContext pendingInstance = iterator.next();
- if (pendingInstance == null) {
- iterator.remove();
- continue;
- }
- if (instanceId.equals(pendingInstance.getId())) {
- // member is activated
- // remove from pending list
- iterator.remove();
- // add to the activated list
- this.activeInstances.add(pendingInstance);
- if (log.isDebugEnabled()) {
- log.debug(String.format("Pending instance is removed and added to the " +
- "activated instance list. [Instance Id] %s", instanceId));
- }
- break;
- }
- }
- }
- }
-
- public void moveActiveInstanceToTerminationPendingInstances(String instanceId) {
- if (instanceId == null) {
- return;
- }
- synchronized (activeInstances) {
- Iterator<InstanceContext> iterator = activeInstances.listIterator();
- while (iterator.hasNext()) {
- InstanceContext activeInstance = iterator.next();
- if (activeInstance == null) {
- iterator.remove();
- continue;
- }
- if (instanceId.equals(activeInstance.getId())) {
- // member is activated
- // remove from pending list
- iterator.remove();
- // add to the activated list
- this.terminatingPending.add(activeInstance);
- if (log.isDebugEnabled()) {
- log.debug(String.format("Active instance is removed and added to the " +
- "termination pending instance list. [Instance Id] %s", instanceId));
- }
- break;
- }
- }
- }
- }
-
- public void movePendingInstanceToTerminationPendingInstances(String instanceId) {
- if (instanceId == null) {
- return;
- }
- synchronized (pendingInstances) {
- Iterator<InstanceContext> iterator = pendingInstances.listIterator();
- while (iterator.hasNext()) {
- InstanceContext pendingInstance = iterator.next();
- if (pendingInstance == null) {
- iterator.remove();
- continue;
- }
- if (instanceId.equals(pendingInstance.getId())) {
- // member is activated
- // remove from pending list
- iterator.remove();
- // add to the activated list
- this.terminatingPending.add(pendingInstance);
- if (log.isDebugEnabled()) {
- log.debug(String.format("Pending instance is removed and added to the " +
- "termination pending instance list. [Instance Id] %s", instanceId));
- }
- break;
- }
- }
- }
- }
-
- public int getNonTerminatedInstancesCount() {
- return this.activeInstances.size() + this.pendingInstances.size();
- }
-
- public int getNonTerminatedInstancesCount(String parentInstanceId) {
- List<InstanceContext> instanceContexts = new ArrayList<InstanceContext>();
-
- for(InstanceContext instanceContext : activeInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
-
- for(InstanceContext instanceContext : pendingInstances) {
- if(instanceContext.getParentInstanceId().equals(parentInstanceId)) {
- instanceContexts.add(instanceContext);
- }
- }
- return instanceContexts.size();
- }
-
- public List<InstanceContext> getTerminatingPending() {
- return terminatingPending;
- }
-
- public void setTerminatingPending(List<InstanceContext> terminatingPending) {
- this.terminatingPending = terminatingPending;
- }
-
- public boolean removeTerminationPendingInstance(String instanceId) {
- if (id == null) {
- return false;
- }
- synchronized (pendingInstances) {
- for (Iterator<InstanceContext> iterator = pendingInstances.iterator(); iterator.hasNext(); ) {
- InstanceContext pendingInstance = iterator.next();
- if (id.equals(pendingInstance.getId())) {
- iterator.remove();
- return true;
- }
-
- }
- }
- return false;
- }
-
-
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
index 4303f26..b9b6050 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitor.java
@@ -29,7 +29,6 @@ import org.apache.stratos.autoscaler.context.cluster.ClusterContextFactory;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
import org.apache.stratos.autoscaler.context.member.MemberStatsContext;
import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.event.publisher.InstanceNotificationPublisher;
@@ -332,7 +331,7 @@ public class ClusterMonitor extends Monitor {
public synchronized void monitor() {
try {
- for (ClusterLevelNetworkPartitionContext networkPartitionContext : getNetworkPartitionCtxts()) {
+ for (NetworkPartitionContext networkPartitionContext : getNetworkPartitionCtxts()) {
final Collection<InstanceContext> clusterInstanceContexts = networkPartitionContext.
getInstanceIdToInstanceContextMap().values();
@@ -825,7 +824,7 @@ public class ClusterMonitor extends Monitor {
clusterId, clusterInstanceId, networkPartitionId, value));
}
if (clusterInstanceId.equals(StratosConstants.NOT_DEFINED)) {
- ClusterLevelNetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
+ NetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
if (null != networkPartitionContext) {
int totalActiveMemberCount = 0;
for (InstanceContext clusterInstanceContext :
@@ -880,7 +879,7 @@ public class ClusterMonitor extends Monitor {
}
if (clusterInstanceId.equals(StratosConstants.NOT_DEFINED)) {
- ClusterLevelNetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
+ NetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
if (null != networkPartitionContext) {
int totalActiveMemberCount = 0;
for (InstanceContext clusterInstanceContext : networkPartitionContext
@@ -933,7 +932,7 @@ public class ClusterMonitor extends Monitor {
}
if (clusterInstanceId.equals(StratosConstants.NOT_DEFINED)) {
- ClusterLevelNetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
+ NetworkPartitionContext networkPartitionContext = getNetworkPartitionContext(networkPartitionId);
if (null != networkPartitionContext) {
int totalActiveMemberCount = 0;
for (InstanceContext clusterInstanceContext : networkPartitionContext
@@ -1482,18 +1481,18 @@ public class ClusterMonitor extends Monitor {
}
- public Map<String, ClusterLevelNetworkPartitionContext> getAllNetworkPartitionCtxts() {
+ public Map<String, NetworkPartitionContext> getAllNetworkPartitionCtxts() {
return (this.clusterContext).getNetworkPartitionCtxts();
}
public ClusterInstanceContext getClusterInstanceContext(String networkPartitionId, String instanceId) {
Map<String,
- ClusterLevelNetworkPartitionContext> clusterLevelNetworkPartitionContextMap =
+ NetworkPartitionContext> clusterLevelNetworkPartitionContextMap =
(this.clusterContext).getNetworkPartitionCtxts();
if (StringUtils.isBlank(networkPartitionId)) {
throw new RuntimeException("Network partition id is null");
}
- ClusterLevelNetworkPartitionContext networkPartitionContext =
+ NetworkPartitionContext networkPartitionContext =
clusterLevelNetworkPartitionContextMap.get(networkPartitionId);
if (networkPartitionContext == null) {
throw new RuntimeException("Network partition context not found: [network-partition-id] " +
@@ -1503,14 +1502,14 @@ public class ClusterMonitor extends Monitor {
return (ClusterInstanceContext) networkPartitionContext.getInstanceContext(instanceId);
}
- public ClusterLevelNetworkPartitionContext getNetworkPartitionContext(String networkPartitionId) {
+ public NetworkPartitionContext getNetworkPartitionContext(String networkPartitionId) {
Map<String,
- ClusterLevelNetworkPartitionContext> clusterLevelNetworkPartitionContextMap =
+ NetworkPartitionContext> clusterLevelNetworkPartitionContextMap =
(this.clusterContext).getNetworkPartitionCtxts();
if (StringUtils.isBlank(networkPartitionId)) {
throw new RuntimeException("Network partition id is null");
}
- ClusterLevelNetworkPartitionContext networkPartitionContext =
+ NetworkPartitionContext networkPartitionContext =
clusterLevelNetworkPartitionContextMap.get(networkPartitionId);
if (networkPartitionContext == null) {
throw new RuntimeException("Network partition context not found: [network-partition-id] " +
@@ -1520,7 +1519,7 @@ public class ClusterMonitor extends Monitor {
return networkPartitionContext;
}
- public Collection<ClusterLevelNetworkPartitionContext> getNetworkPartitionCtxts() {
+ public Collection<NetworkPartitionContext> getNetworkPartitionCtxts() {
return (this.clusterContext).getNetworkPartitionCtxts().values();
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ApplicationMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ApplicationMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ApplicationMonitor.java
index 1f815cd..af00873 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ApplicationMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ApplicationMonitor.java
@@ -30,7 +30,6 @@ import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.context.InstanceContext;
import org.apache.stratos.autoscaler.context.application.ApplicationInstanceContext;
import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext;
import org.apache.stratos.autoscaler.exception.application.DependencyBuilderException;
import org.apache.stratos.autoscaler.exception.application.MonitorNotFoundException;
import org.apache.stratos.autoscaler.exception.application.TopologyInConsistentException;
@@ -48,7 +47,6 @@ import org.apache.stratos.messaging.domain.application.Application;
import org.apache.stratos.messaging.domain.application.ApplicationStatus;
import org.apache.stratos.messaging.domain.application.GroupStatus;
import org.apache.stratos.messaging.domain.instance.ApplicationInstance;
-import org.apache.stratos.messaging.domain.instance.Instance;
import org.apache.stratos.messaging.domain.topology.ClusterStatus;
import org.apache.stratos.messaging.domain.topology.lifecycle.LifeCycleState;
@@ -169,7 +167,7 @@ public class ApplicationMonitor extends ParentComponentMonitor {
private void handleScalingMaxOut(InstanceContext instanceContext,
NetworkPartitionContext networkPartitionContext) {
- if (((ParentLevelNetworkPartitionContext) networkPartitionContext).getPendingInstancesCount() == 0) {
+ if (((NetworkPartitionContext) networkPartitionContext).getPendingInstancesCount() == 0) {
//handling the application bursting only when there are no pending instances found
try {
if (log.isInfoEnabled()) {
@@ -311,8 +309,8 @@ public class ApplicationMonitor extends ParentComponentMonitor {
log.info("Detected a newly updated [network-partition] " + networkPartitionId +
" for [application] " + appId + ". Hence new application instance " +
"creation is going to start now!");
- ParentLevelNetworkPartitionContext context =
- new ParentLevelNetworkPartitionContext(networkPartitionId);
+ NetworkPartitionContext context =
+ new NetworkPartitionContext(networkPartitionId);
//If application instances found in the ApplicationsTopology,
// then have to add them first before creating new one
ApplicationInstance appInstance = (ApplicationInstance) application.
@@ -547,8 +545,8 @@ public class ApplicationMonitor extends ParentComponentMonitor {
}
for (String networkPartitionIds : nextNetworkPartitions) {
- ParentLevelNetworkPartitionContext context =
- new ParentLevelNetworkPartitionContext(networkPartitionIds);
+ NetworkPartitionContext context =
+ new NetworkPartitionContext(networkPartitionIds);
//If application instances found in the ApplicationsTopology,
// then have to add them first before creating new one
ApplicationInstance appInstance = (ApplicationInstance) application.
@@ -575,8 +573,8 @@ public class ApplicationMonitor extends ParentComponentMonitor {
Map<String, ApplicationInstance> instanceMap = application.getInstanceIdToInstanceContextMap();
for (ApplicationInstance instance : instanceMap.values()) {
if (!instanceIds.contains(instance.getInstanceId())) {
- ParentLevelNetworkPartitionContext context =
- new ParentLevelNetworkPartitionContext(instance.getNetworkPartitionId());
+ NetworkPartitionContext context =
+ new NetworkPartitionContext(instance.getNetworkPartitionId());
//If application instances found in the ApplicationsTopology,
// then have to add them first before creating new one
ApplicationInstance appInstance = (ApplicationInstance) application.
@@ -610,7 +608,7 @@ public class ApplicationMonitor extends ParentComponentMonitor {
* @return instance Id
*/
private String handleApplicationInstanceCreation(Application application,
- ParentLevelNetworkPartitionContext context,
+ NetworkPartitionContext context,
ApplicationInstance instanceExist) {
ApplicationInstance instance;
ApplicationInstanceContext instanceContext;
@@ -703,8 +701,8 @@ public class ApplicationMonitor extends ParentComponentMonitor {
for (String networkPartitionId : nextNetworkPartitions) {
if (!this.getNetworkPartitionContextsMap().containsKey(networkPartitionId)) {
String instanceId;
- ParentLevelNetworkPartitionContext context = new
- ParentLevelNetworkPartitionContext(networkPartitionId);
+ NetworkPartitionContext context = new
+ NetworkPartitionContext(networkPartitionId);
ApplicationInstance appInstance = (ApplicationInstance) application.
getInstanceByNetworkPartitionId(context.getId());
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
index 9224997..ee519a6 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java
@@ -22,7 +22,6 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.algorithms.PartitionAlgorithm;
import org.apache.stratos.autoscaler.applications.ApplicationHolder;
-import org.apache.stratos.autoscaler.applications.dependency.context.ApplicationChildContext;
import org.apache.stratos.autoscaler.applications.topic.ApplicationBuilder;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.context.InstanceContext;
@@ -30,7 +29,6 @@ import org.apache.stratos.autoscaler.context.group.GroupInstanceContext;
import org.apache.stratos.autoscaler.context.partition.GroupLevelPartitionContext;
import org.apache.stratos.autoscaler.context.partition.PartitionContext;
import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext;
import org.apache.stratos.autoscaler.exception.application.DependencyBuilderException;
import org.apache.stratos.autoscaler.exception.application.MonitorNotFoundException;
import org.apache.stratos.autoscaler.exception.application.TopologyInConsistentException;
@@ -156,8 +154,8 @@ public class GroupMonitor extends ParentComponentMonitor {
}
}
- ParentLevelNetworkPartitionContext parentNetworkPartitionContext
- = (ParentLevelNetworkPartitionContext) networkPartitionContext;
+ NetworkPartitionContext parentNetworkPartitionContext
+ = (NetworkPartitionContext) networkPartitionContext;
Collection<Instance> parentInstances = parent.getInstances();
for (Instance parentInstance : parentInstances) {
@@ -180,7 +178,7 @@ public class GroupMonitor extends ParentComponentMonitor {
//keep on scale-up/scale-down only if the application is active
ApplicationMonitor appMonitor = AutoscalerContext.getInstance().
getAppMonitor(appId);
- int activeAppInstances = ((ParentLevelNetworkPartitionContext) appMonitor.
+ int activeAppInstances = ((NetworkPartitionContext) appMonitor.
getNetworkPartitionContext(parentNetworkPartitionContext.getId())).
getActiveInstancesCount();
if (activeAppInstances > 0) {
@@ -200,7 +198,7 @@ public class GroupMonitor extends ParentComponentMonitor {
if (activeInstances > maxInstances) {
int instancesToBeTerminated = activeInstances - maxInstances;
List<InstanceContext> contexts =
- ((ParentLevelNetworkPartitionContext) networkPartitionContext).
+ ((NetworkPartitionContext) networkPartitionContext).
getInstanceIdToInstanceContextMap(parentInstance.getInstanceId());
List<InstanceContext> contextList = new ArrayList<InstanceContext>(contexts);
for (int i = 0; i < instancesToBeTerminated; i++) {
@@ -265,8 +263,8 @@ public class GroupMonitor extends ParentComponentMonitor {
// if it is a force scale-down
if (allChildrenScaleDown || forceScaleDown) {
if (hasScalingDependents) {
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext
- = (ParentLevelNetworkPartitionContext) nwPartitionContext;
+ NetworkPartitionContext parentLevelNetworkPartitionContext
+ = (NetworkPartitionContext) nwPartitionContext;
if (parentLevelNetworkPartitionContext.getNonTerminatedInstancesCount() >
parentLevelNetworkPartitionContext.getMinInstanceCount()) {
//Will scale down based on dependent manner
@@ -286,8 +284,8 @@ public class GroupMonitor extends ParentComponentMonitor {
} else {
if (groupScalingEnabled) {
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext
- = (ParentLevelNetworkPartitionContext) nwPartitionContext;
+ NetworkPartitionContext parentLevelNetworkPartitionContext
+ = (NetworkPartitionContext) nwPartitionContext;
if (parentLevelNetworkPartitionContext.getNonTerminatedInstancesCount() >
parentLevelNetworkPartitionContext.getMinInstanceCount()) {
//send terminating to the specific group instance in the scale down
@@ -316,7 +314,7 @@ public class GroupMonitor extends ParentComponentMonitor {
private void createGroupInstanceOnScaling(final NetworkPartitionContext networkPartitionContext,
final String parentInstanceId) {
if (groupScalingEnabled) {
- if (((ParentLevelNetworkPartitionContext) networkPartitionContext).
+ if (((NetworkPartitionContext) networkPartitionContext).
getPendingInstancesCount(parentInstanceId) == 0) {
//one of the child is loaded and max out.
// Hence creating new group instance
@@ -373,15 +371,15 @@ public class GroupMonitor extends ParentComponentMonitor {
log.debug("This [Group] " + id + " [scale-up] dependencies. " +
"Hence notifying the [parent] " + parent.getId());
}
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext
- = (ParentLevelNetworkPartitionContext) networkPartitionContext;
+ NetworkPartitionContext parentLevelNetworkPartitionContext
+ = (NetworkPartitionContext) networkPartitionContext;
//notifying the parent when scale dependents found
int maxInstances = parentLevelNetworkPartitionContext.getMaxInstanceCount();
if (groupScalingEnabled && maxInstances > parentLevelNetworkPartitionContext.
getNonTerminatedInstancesCount()) {
//increase group by one more instance and calculate the factor for the group scaling
// and notify parent to scale all the dependent in parallel with this factor
- float minInstances = ((ParentLevelNetworkPartitionContext)
+ float minInstances = ((NetworkPartitionContext)
networkPartitionContext).getMinInstanceCount();
float factor = (minInstances + 1) / minInstances;
@@ -611,8 +609,8 @@ public class GroupMonitor extends ParentComponentMonitor {
get(networkPartitionId);
float factor = scalingEvent.getFactor();
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext
- = (ParentLevelNetworkPartitionContext) networkPartitionContext;
+ NetworkPartitionContext parentLevelNetworkPartitionContext
+ = (NetworkPartitionContext) networkPartitionContext;
int currentInstances = parentLevelNetworkPartitionContext.
getNonTerminatedInstancesCount(parentInstanceId);
float requiredInstances = factor * parentLevelNetworkPartitionContext.getMinInstanceCount();
@@ -684,16 +682,16 @@ public class GroupMonitor extends ParentComponentMonitor {
* @param parentInstanceContext the parent instance context
* @return the group level network partition context
*/
- private ParentLevelNetworkPartitionContext getGroupLevelNetworkPartitionContext(String groupAlias,
+ private NetworkPartitionContext getGroupLevelNetworkPartitionContext(String groupAlias,
String appId,
Instance parentInstanceContext) {
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext;
+ NetworkPartitionContext parentLevelNetworkPartitionContext;
String deploymentPolicyId = AutoscalerUtil.getDeploymentPolicyIdByAlias(appId, groupAlias);
DeploymentPolicy deploymentPolicy = PolicyManager.getInstance().getDeploymentPolicy(deploymentPolicyId);
String networkPartitionId = parentInstanceContext.getNetworkPartitionId();
if (this.getNetworkPartitionContextsMap().containsKey(networkPartitionId)) {
- parentLevelNetworkPartitionContext = (ParentLevelNetworkPartitionContext) this.getNetworkPartitionContextsMap().
+ parentLevelNetworkPartitionContext = (NetworkPartitionContext) this.getNetworkPartitionContextsMap().
get(networkPartitionId);
} else {
if (deploymentPolicy != null) {
@@ -706,16 +704,16 @@ public class GroupMonitor extends ParentComponentMonitor {
}
if (networkPartition != null) {
- parentLevelNetworkPartitionContext = new ParentLevelNetworkPartitionContext(
+ parentLevelNetworkPartitionContext = new NetworkPartitionContext(
networkPartitionId,
networkPartition.getPartitionAlgo());
} else {
- parentLevelNetworkPartitionContext = new ParentLevelNetworkPartitionContext(
+ parentLevelNetworkPartitionContext = new NetworkPartitionContext(
networkPartitionId);
}
} else {
- parentLevelNetworkPartitionContext = new ParentLevelNetworkPartitionContext(
+ parentLevelNetworkPartitionContext = new NetworkPartitionContext(
networkPartitionId);
}
if (log.isInfoEnabled()) {
@@ -736,7 +734,7 @@ public class GroupMonitor extends ParentComponentMonitor {
* @param groupAlias alias of the group
*/
private void addPartitionContext(Instance parentInstanceContext,
- ParentLevelNetworkPartitionContext networkPartitionContext, String groupAlias) {
+ NetworkPartitionContext networkPartitionContext, String groupAlias) {
String networkPartitionId = parentInstanceContext.getNetworkPartitionId();
@@ -799,7 +797,7 @@ public class GroupMonitor extends ParentComponentMonitor {
*/
private String createGroupInstanceAndAddToMonitor(Group group, Instance parentInstanceContext,
PartitionContext partitionContext,
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext,
+ NetworkPartitionContext parentLevelNetworkPartitionContext,
GroupInstance groupInstance) {
String partitionId = null;
@@ -856,7 +854,7 @@ public class GroupMonitor extends ParentComponentMonitor {
Instance parentInstanceContext = getParentInstanceContext(parentInstanceId);
// Get existing or create new GroupLevelNetworkPartitionContext
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext =
+ NetworkPartitionContext parentLevelNetworkPartitionContext =
getGroupLevelNetworkPartitionContext(group.getUniqueIdentifier(),
this.appId, parentInstanceContext);
//adding the partitionContext to the network partition context
@@ -921,7 +919,7 @@ public class GroupMonitor extends ParentComponentMonitor {
* @return the partition-context
*/
private PartitionContext getPartitionContext(
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext,
+ NetworkPartitionContext parentLevelNetworkPartitionContext,
String parentPartitionId) {
PartitionContext partitionContext = null;
// Get partitionContext to create instance in
@@ -962,7 +960,7 @@ public class GroupMonitor extends ParentComponentMonitor {
" in order to satisfy the demand on scaling for " +
"[parent-instance] " + parentInstanceId);
// Get existing or create new GroupLevelNetworkPartitionContext
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext =
+ NetworkPartitionContext parentLevelNetworkPartitionContext =
getGroupLevelNetworkPartitionContext(group.getUniqueIdentifier(),
this.appId, parentInstanceContext);
//adding the partitionContext to the network partition context
@@ -1061,7 +1059,7 @@ public class GroupMonitor extends ParentComponentMonitor {
*
* @param parentLevelNetworkPartitionContext the group level network partition context
*/
- public void addNetworkPartitionContext(ParentLevelNetworkPartitionContext
+ public void addNetworkPartitionContext(NetworkPartitionContext
parentLevelNetworkPartitionContext) {
this.getNetworkPartitionContextsMap().put(parentLevelNetworkPartitionContext.getId(),
parentLevelNetworkPartitionContext);
@@ -1087,7 +1085,7 @@ public class GroupMonitor extends ParentComponentMonitor {
+ id + " upon termination of an group instance for [parent-instance] "
+ parentInstanceId);
// Get existing or create new GroupLevelNetworkPartitionContext
- ParentLevelNetworkPartitionContext parentLevelNetworkPartitionContext =
+ NetworkPartitionContext parentLevelNetworkPartitionContext =
getGroupLevelNetworkPartitionContext(group.getUniqueIdentifier(),
this.appId, parentInstanceContext);
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
index ef61fa2..e033f93 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/ParentComponentMonitor.java
@@ -29,7 +29,6 @@ import org.apache.stratos.autoscaler.applications.dependency.DependencyTree;
import org.apache.stratos.autoscaler.applications.dependency.context.ApplicationChildContext;
import org.apache.stratos.autoscaler.applications.topic.ApplicationBuilder;
import org.apache.stratos.autoscaler.context.InstanceContext;
-import org.apache.stratos.autoscaler.context.partition.network.ParentLevelNetworkPartitionContext;
import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.exception.application.DependencyBuilderException;
@@ -671,8 +670,8 @@ public abstract class ParentComponentMonitor extends Monitor {
}
if (!groupInstances.isEmpty()) {
- ParentLevelNetworkPartitionContext networkPartitionContext =
- (ParentLevelNetworkPartitionContext) ((GroupMonitor) monitor).
+ NetworkPartitionContext networkPartitionContext =
+ (NetworkPartitionContext) ((GroupMonitor) monitor).
getNetworkPartitionContextsMap().get(networkPartitionId);
int minInstances = networkPartitionContext.getMinInstanceCount();
//if terminated all the instances in this instances map should be in terminated state
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
index 51443a1..87d71a7 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
@@ -32,11 +32,10 @@ import org.apache.stratos.autoscaler.context.cluster.ClusterContext;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
import org.apache.stratos.autoscaler.context.member.MemberStatsContext;
import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
+import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.InstanceNotificationPublisher;
import org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor;
import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
-import org.apache.stratos.common.client.CloudControllerServiceClient;
import org.apache.stratos.common.constants.StratosConstants;
/**
@@ -186,7 +185,7 @@ public class RuleTasksDelegator {
int minimumCountOfNetworkPartition;
ClusterMonitor clusterMonitor = AutoscalerContext.getInstance().getClusterMonitor(clusterId);
ClusterContext clusterContext = clusterMonitor.getClusterContext();
- ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext =
+ NetworkPartitionContext clusterLevelNetworkPartitionContext =
clusterContext.getNetworkPartitionCtxt(nwPartitionId);
ClusterInstanceContext clusterInstanceContext =
(ClusterInstanceContext) clusterLevelNetworkPartitionContext.
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
index 9e52e61..c3bb2c7 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
@@ -25,7 +25,6 @@ import org.apache.stratos.autoscaler.algorithms.networkpartition.NetworkPartitio
import org.apache.stratos.autoscaler.applications.ApplicationHolder;
import org.apache.stratos.autoscaler.applications.parser.ApplicationParser;
import org.apache.stratos.autoscaler.applications.parser.DefaultApplicationParser;
-import org.apache.stratos.autoscaler.applications.pojo.*;
import org.apache.stratos.autoscaler.applications.pojo.ApplicationClusterContext;
import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
import org.apache.stratos.autoscaler.applications.pojo.ArtifactRepositoryContext;
@@ -39,7 +38,7 @@ import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.context.InstanceContext;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
+import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.exception.*;
import org.apache.stratos.autoscaler.exception.application.ApplicationDefinitionException;
@@ -57,7 +56,6 @@ import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.autoscaler.registry.RegistryManager;
import org.apache.stratos.autoscaler.services.AutoscalerService;
-import org.apache.stratos.autoscaler.stub.pojo.*;
import org.apache.stratos.autoscaler.util.AutoscalerUtil;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeTypeExceptionException;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidPartitionExceptionException;
@@ -1132,7 +1130,7 @@ public class AutoscalerServiceImpl implements AutoscalerService {
//Following if statement checks the relevant clusters for the updated deployment policy
if (deploymentPolicy.getDeploymentPolicyID().equals(clusterMonitor.getDeploymentPolicyId())) {
for (NetworkPartitionRef networkPartition : deploymentPolicy.getNetworkPartitionRefs()) {
- ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext
+ NetworkPartitionContext clusterLevelNetworkPartitionContext
= clusterMonitor.getClusterContext().getNetworkPartitionCtxt(networkPartition.getId());
if(clusterLevelNetworkPartitionContext != null) {
try {
@@ -1165,7 +1163,7 @@ public class AutoscalerServiceImpl implements AutoscalerService {
}
}
- private void removeOldPartitionsFromClusterMonitor(ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
+ private void removeOldPartitionsFromClusterMonitor(NetworkPartitionContext clusterLevelNetworkPartitionContext,
NetworkPartitionRef networkPartition) {
for (InstanceContext instanceContext : clusterLevelNetworkPartitionContext.getInstanceIdToInstanceContextMap().values()) {
@@ -1197,7 +1195,7 @@ public class AutoscalerServiceImpl implements AutoscalerService {
}
}
- private void addNewPartitionsToClusterMonitor(ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext,
+ private void addNewPartitionsToClusterMonitor(NetworkPartitionContext clusterLevelNetworkPartitionContext,
NetworkPartitionRef networkPartitionRef, String deploymentPolicyID,
String cartridgeType) throws RemoteException,
CloudControllerServiceInvalidPartitionExceptionException,
@@ -1207,7 +1205,8 @@ public class AutoscalerServiceImpl implements AutoscalerService {
for (PartitionRef partition : networkPartitionRef.getPartitionRefs()) {
//Iterating through instances
- for (InstanceContext instanceContext : clusterLevelNetworkPartitionContext.getInstanceIdToInstanceContextMap().values()) {
+ for (InstanceContext instanceContext : clusterLevelNetworkPartitionContext.
+ getInstanceIdToInstanceContextMap().values()) {
ClusterInstanceContext clusterInstanceContext = (ClusterInstanceContext) instanceContext;
if (null == clusterInstanceContext.getPartitionCtxt(partition.getId())) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusActiveProcessor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusActiveProcessor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusActiveProcessor.java
index 978f742..a8521d5 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusActiveProcessor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusActiveProcessor.java
@@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
+import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor;
import org.apache.stratos.autoscaler.status.processor.StatusProcessor;
@@ -64,7 +64,7 @@ public class ClusterStatusActiveProcessor extends ClusterStatusProcessor {
ClusterMonitor monitor = AutoscalerContext.getInstance().
getClusterMonitor(clusterId);
boolean clusterActive = false;
- for (ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext :
+ for (NetworkPartitionContext clusterLevelNetworkPartitionContext :
monitor.getNetworkPartitionCtxts()) {
//minimum check per partition
ClusterInstanceContext instanceContext =
http://git-wip-us.apache.org/repos/asf/stratos/blob/f1e5488e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusInactiveProcessor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusInactiveProcessor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusInactiveProcessor.java
index 7d7a2e8..10b84fa 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusInactiveProcessor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/cluster/ClusterStatusInactiveProcessor.java
@@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
-import org.apache.stratos.autoscaler.context.partition.network.ClusterLevelNetworkPartitionContext;
+import org.apache.stratos.autoscaler.context.partition.network.NetworkPartitionContext;
import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
import org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor;
import org.apache.stratos.autoscaler.status.processor.StatusProcessor;
@@ -85,7 +85,7 @@ public class ClusterStatusInactiveProcessor extends ClusterStatusProcessor {
private boolean getClusterInactive(String instanceId, ClusterMonitor monitor) {
boolean clusterInactive = false;
- for (ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext :
+ for (NetworkPartitionContext clusterLevelNetworkPartitionContext :
monitor.getAllNetworkPartitionCtxts().values()) {
ClusterInstanceContext instanceContext =
(ClusterInstanceContext) clusterLevelNetworkPartitionContext.