You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by la...@apache.org on 2015/04/07 07:54:00 UTC
[7/7] stratos git commit: Format autoscaler component code
Format autoscaler component code
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/506affb8
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/506affb8
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/506affb8
Branch: refs/heads/master
Commit: 506affb87e8d16c70e2dc2370b0a4e86ed48c4b9
Parents: 7be740d
Author: Lahiru Sandaruwan <la...@apache.org>
Authored: Tue Apr 7 11:23:10 2015 +0530
Committer: Lahiru Sandaruwan <la...@apache.org>
Committed: Tue Apr 7 11:23:46 2015 +0530
----------------------------------------------------------------------
.../algorithms/NetworkPartitionAlgorithm.java | 15 +-
.../algorithms/PartitionAlgorithm.java | 2 +
.../networkpartition/AllAtOnceAlgorithm.java | 42 +--
.../NetworkPartitionAlgorithmContext.java | 50 ++--
.../OneAfterAnotherAlgorithm.java | 272 ++++++++---------
.../algorithms/partition/OneAfterAnother.java | 16 +-
.../algorithms/partition/RoundRobin.java | 57 ++--
.../applications/ApplicationHolder.java | 16 +-
.../applications/ApplicationUtils.java | 54 ++--
.../applications/ClusterInformation.java | 4 +-
.../applications/MTClusterInformation.java | 2 +-
.../dependency/DependencyBuilder.java | 27 +-
.../applications/dependency/DependencyTree.java | 28 +-
.../context/ApplicationChildContext.java | 4 +-
.../context/ApplicationChildContextFactory.java | 36 +--
.../dependency/context/ClusterChildContext.java | 2 +-
.../dependency/context/GroupChildContext.java | 2 +-
.../applications/parser/ApplicationParser.java | 4 +-
.../parser/DefaultApplicationParser.java | 294 ++++++++++---------
.../applications/parser/ParserUtils.java | 16 +-
.../applications/payload/BasicPayloadData.java | 170 +++++------
.../applications/payload/PayloadData.java | 13 +-
.../applications/payload/PayloadFactory.java | 50 ++--
.../pojo/ApplicationClusterContext.java | 32 +-
.../applications/pojo/ApplicationContext.java | 2 +-
.../applications/pojo/CartridgeContext.java | 60 ++--
.../applications/pojo/ComponentContext.java | 14 +-
.../applications/pojo/DependencyContext.java | 16 +-
.../applications/pojo/GroupContext.java | 22 +-
.../applications/pojo/PersistenceContext.java | 12 +-
.../pojo/SubscribableInfoContext.java | 2 +-
.../applications/pojo/VolumeContext.java | 106 +++----
.../applications/topic/ApplicationBuilder.java | 51 ++--
.../topic/ApplicationsEventPublisher.java | 10 +-
.../client/CloudControllerClient.java | 10 +-
...ntityApplicationManagementServiceClient.java | 28 +-
.../client/OAuthAdminServiceClient.java | 8 +-
.../stratos/autoscaler/client/Utility.java | 2 +-
.../autoscaler/commands/ASPolicyCommands.java | 46 +--
.../autoscaler/context/AutoscalerContext.java | 129 ++++----
.../context/cluster/AbstractClusterContext.java | 2 +-
.../context/cluster/ClusterContext.java | 2 +-
.../context/cluster/ClusterContextFactory.java | 2 +-
.../context/cluster/ClusterInstanceContext.java | 6 +-
.../context/group/GroupInstanceContext.java | 12 +-
.../partition/ClusterLevelPartitionContext.java | 17 +-
.../partition/GroupLevelPartitionContext.java | 6 +-
...ApplicationLevelNetworkPartitionContext.java | 1 -
.../ClusterLevelNetworkPartitionContext.java | 1 -
.../GroupLevelNetworkPartitionContext.java | 4 -
.../publisher/ClusterStatusEventPublisher.java | 50 ++--
.../InstanceNotificationPublisher.java | 2 +-
.../AutoscalerHealthStatEventReceiver.java | 60 ++--
.../AutoscalerTopologyEventReceiver.java | 196 ++++++-------
.../exception/AutoScalerException.java | 8 +-
.../exception/InvalidArgumentException.java | 40 +--
.../ApplicationDefinitionException.java | 8 +-
.../application/DependencyBuilderException.java | 6 +-
.../InvalidApplicationPolicyException.java | 6 +-
.../application/MonitorNotFoundException.java | 2 +-
.../TopologyInConsistentException.java | 6 +-
.../CartridgeInformationException.java | 8 +-
.../cartridge/NonExistingLBException.java | 14 +-
.../exception/cartridge/SpawningException.java | 16 +-
.../cartridge/TerminationException.java | 22 +-
.../partition/InvalidPartitionException.java | 10 +-
.../partition/PartitionValidationException.java | 29 +-
.../ApplicatioinPolicyNotExistsException.java | 44 +--
.../InvalidDeploymentPolicyException.java | 10 +-
.../policy/InvalidPolicyException.java | 44 +--
.../policy/PolicyValidationException.java | 20 +-
.../autoscaler/internal/ASBundleActivater.java | 20 +-
.../internal/AutoscalerServiceComponent.java | 106 +++----
.../stratos/autoscaler/monitor/Monitor.java | 3 +-
.../autoscaler/monitor/MonitorFactory.java | 14 +-
.../monitor/cluster/ClusterMonitor.java | 4 +-
.../monitor/component/ApplicationMonitor.java | 180 ++++++------
.../monitor/component/GroupMonitor.java | 18 +-
.../component/ParentComponentMonitor.java | 24 +-
.../monitor/events/ClusterStatusEvent.java | 4 +-
.../autoscaler/monitor/events/MonitorEvent.java | 7 +-
.../monitor/events/MonitorStatusEvent.java | 4 +-
.../builder/MonitorStatusEventBuilder.java | 15 +-
.../stratos/autoscaler/pojo/Dependencies.java | 18 +-
.../stratos/autoscaler/pojo/ServiceGroup.java | 6 +-
.../autoscaler/pojo/policy/PolicyManager.java | 15 +-
.../pojo/policy/autoscale/AutoscalePolicy.java | 172 +++++------
.../pojo/policy/autoscale/LoadAverage.java | 21 +-
.../policy/autoscale/LoadAverageThresholds.java | 32 +-
.../pojo/policy/autoscale/LoadThresholds.java | 58 ++--
.../policy/autoscale/MemoryConsumption.java | 19 +-
.../autoscale/MemoryConsumptionThresholds.java | 29 +-
.../pojo/policy/autoscale/RequestsInFlight.java | 19 +-
.../autoscale/RequestsInFlightThresholds.java | 35 +--
.../policy/deployment/ApplicationPolicy.java | 84 +++---
.../policy/deployment/DeploymentPolicy.java | 102 +++----
.../rule/AutoscalerRuleEvaluator.java | 16 +-
.../apache/stratos/autoscaler/rule/RuleLog.java | 8 +-
.../autoscaler/services/AutoscalerService.java | 129 ++++----
.../status/processor/StatusProcessor.java | 1 +
.../status/processor/StatusProcessorChain.java | 4 +-
.../cluster/ClusterStatusInactiveProcessor.java | 9 +-
.../cluster/ClusterStatusProcessor.java | 3 +-
.../ClusterStatusTerminatedProcessor.java | 6 +-
.../group/GroupStatusActiveProcessor.java | 4 +-
.../processor/group/GroupStatusProcessor.java | 21 +-
.../autoscaler/util/AutoscalerConstants.java | 184 ++++++------
.../util/AutoscalerObjectConverter.java | 18 +-
.../stratos/autoscaler/util/AutoscalerUtil.java | 55 ++--
.../stratos/autoscaler/util/ConfUtil.java | 90 +++---
.../stratos/autoscaler/util/Deserializer.java | 24 +-
.../stratos/autoscaler/util/Serializer.java | 21 +-
.../autoscaler/util/ServiceReferenceHolder.java | 36 +--
.../src/main/resources/META-INF/services.xml | 8 +-
.../stratos/autoscaler/TestDelegator.java | 8 +-
.../stratos/autoscaler/TestMinimumRule.java | 16 +-
.../autoscaler/TestObsoletedMemberRule.java | 58 ++--
.../stratos/autoscaler/TestRulesPackaged.java | 4 +-
.../src/test/resources/deployment-policy.xml | 28 +-
.../src/test/resources/partition.xml | 14 +-
.../src/test/resources/partitions.xml | 24 +-
.../rest/endpoint/api/StratosApiV41.java | 2 +-
122 files changed, 2093 insertions(+), 2087 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/NetworkPartitionAlgorithm.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/NetworkPartitionAlgorithm.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/NetworkPartitionAlgorithm.java
index 70b6286..f089450 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/NetworkPartitionAlgorithm.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/NetworkPartitionAlgorithm.java
@@ -23,11 +23,12 @@ import java.util.List;
import org.apache.stratos.autoscaler.algorithms.networkpartition.NetworkPartitionAlgorithmContext;
public interface NetworkPartitionAlgorithm {
-
- /**
- * Get a list network partitions in which application instances to be spawned
- * @param networkPartitionAlgorithmContext the {@link NetworkPartitionAlgorithmContext}
- * @return list of network partition ids
- */
- public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext);
+
+ /**
+ * Get a list network partitions in which application instances to be spawned
+ *
+ * @param networkPartitionAlgorithmContext the {@link NetworkPartitionAlgorithmContext}
+ * @return list of network partition ids
+ */
+ public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/PartitionAlgorithm.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/PartitionAlgorithm.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/PartitionAlgorithm.java
index 3ad3c85..5fc61e2 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/PartitionAlgorithm.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/PartitionAlgorithm.java
@@ -29,6 +29,7 @@ public interface PartitionAlgorithm {
/**
* Returns a {@link PartitionContext} to scale up from the given list
+ *
* @param partitionContexts is the array of partition contexts which will be select the partition context from
* @return {@link PartitionContext} to scale up
*/
@@ -36,6 +37,7 @@ public interface PartitionAlgorithm {
/**
* Returns a {@link PartitionContext} to scale down from the given list
+ *
* @param partitionContexts is the array of partition contexts which will be select the partition context from
* @return {@link PartitionContext} to scale down
*/
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/AllAtOnceAlgorithm.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/AllAtOnceAlgorithm.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/AllAtOnceAlgorithm.java
index 61dd470..359a4ab 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/AllAtOnceAlgorithm.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/AllAtOnceAlgorithm.java
@@ -25,25 +25,25 @@ import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
import edu.emory.mathcs.backport.java.util.Arrays;
-public class AllAtOnceAlgorithm implements NetworkPartitionAlgorithm{
-
- @Override
- public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext) {
-
- if (networkPartitionAlgorithmContext == null) {
- return null;
- }
-
- ApplicationPolicy applicationPolicy = networkPartitionAlgorithmContext.getApplicationPolicy();
- if (applicationPolicy == null) {
- return null;
- }
-
- String[] networkPartitions = applicationPolicy.getNetworkPartitions();
- if (networkPartitions == null || networkPartitions.length ==0) {
- return null;
- }
-
- return Arrays.asList(networkPartitions);
- }
+public class AllAtOnceAlgorithm implements NetworkPartitionAlgorithm {
+
+ @Override
+ public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext) {
+
+ if (networkPartitionAlgorithmContext == null) {
+ return null;
+ }
+
+ ApplicationPolicy applicationPolicy = networkPartitionAlgorithmContext.getApplicationPolicy();
+ if (applicationPolicy == null) {
+ return null;
+ }
+
+ String[] networkPartitions = applicationPolicy.getNetworkPartitions();
+ if (networkPartitions == null || networkPartitions.length == 0) {
+ return null;
+ }
+
+ return Arrays.asList(networkPartitions);
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/NetworkPartitionAlgorithmContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/NetworkPartitionAlgorithmContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/NetworkPartitionAlgorithmContext.java
index 6e89c80..8df38e1 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/NetworkPartitionAlgorithmContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/NetworkPartitionAlgorithmContext.java
@@ -23,29 +23,29 @@ import java.util.concurrent.atomic.AtomicInteger;
import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
-public class NetworkPartitionAlgorithmContext implements Serializable{
-
- private static final long serialVersionUID = -1539453541207312793L;
- private String applicationId;
- private ApplicationPolicy applicationPolicy;
- private AtomicInteger currentNetworkPartitionIndex;
-
- public NetworkPartitionAlgorithmContext(String applicationId, ApplicationPolicy applicationPolicy,
- int currentNetworkPartitionIndex) {
- this.applicationId = applicationId;
- this.applicationPolicy = applicationPolicy;
- this.currentNetworkPartitionIndex = new AtomicInteger(currentNetworkPartitionIndex);
- }
-
- public AtomicInteger getCurrentNetworkPartitionIndex() {
- return currentNetworkPartitionIndex;
- }
-
- public ApplicationPolicy getApplicationPolicy() {
- return applicationPolicy;
- }
-
- public String getApplicationId() {
- return applicationId;
- }
+public class NetworkPartitionAlgorithmContext implements Serializable {
+
+ private static final long serialVersionUID = -1539453541207312793L;
+ private String applicationId;
+ private ApplicationPolicy applicationPolicy;
+ private AtomicInteger currentNetworkPartitionIndex;
+
+ public NetworkPartitionAlgorithmContext(String applicationId, ApplicationPolicy applicationPolicy,
+ int currentNetworkPartitionIndex) {
+ this.applicationId = applicationId;
+ this.applicationPolicy = applicationPolicy;
+ this.currentNetworkPartitionIndex = new AtomicInteger(currentNetworkPartitionIndex);
+ }
+
+ public AtomicInteger getCurrentNetworkPartitionIndex() {
+ return currentNetworkPartitionIndex;
+ }
+
+ public ApplicationPolicy getApplicationPolicy() {
+ return applicationPolicy;
+ }
+
+ public String getApplicationId() {
+ return applicationId;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/OneAfterAnotherAlgorithm.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/OneAfterAnotherAlgorithm.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/OneAfterAnotherAlgorithm.java
index aa6a044..035e8d8 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/OneAfterAnotherAlgorithm.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/networkpartition/OneAfterAnotherAlgorithm.java
@@ -29,140 +29,140 @@ import org.apache.stratos.common.constants.StratosConstants;
import edu.emory.mathcs.backport.java.util.Arrays;
-public class OneAfterAnotherAlgorithm implements NetworkPartitionAlgorithm{
-
- private static final Log log = LogFactory.getLog(NetworkPartitionAlgorithm.class);
-
- @Override
- public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext) {
-
- if (networkPartitionAlgorithmContext == null) {
- if (log.isWarnEnabled()) {
- String msg = "Network partition algorithm context is null";
- log.warn(msg);
- }
- return null;
- }
-
- String applicationId = networkPartitionAlgorithmContext.getApplicationId();
- if (applicationId == null) {
- if (log.isWarnEnabled()) {
- String msg = "Application id is null in etwork partition algorithm context";
- log.warn(msg);
- }
- return null;
- }
-
- ApplicationPolicy applicationPolicy = networkPartitionAlgorithmContext.getApplicationPolicy();
- if (applicationPolicy == null) {
- if (log.isWarnEnabled()) {
- String msg = String.format("No application policy found in network partition algorithm context [application-id] %s", applicationId);
- log.warn(msg);
- }
- return null;
- }
-
- String applicatioinPolicyId = applicationPolicy.getId();
- String[] networkPartitionGroups = applicationPolicy.getNetworkPartitionGroups();
- if (networkPartitionGroups != null && networkPartitionGroups.length != 0) {
- if (log.isDebugEnabled()) {
- String msg = String.format("Network partition groups property found in application policy [application-id] %s [application-policy-id] %s. "
- + "Hence using network partition groups for app bursting", applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
- int totalNetworkPartitionGroups = networkPartitionGroups.length;
- if (log.isDebugEnabled()) {
- String msg = String.format("%s network partition groups found in application policy [application-id] %s [application-policy-id] %s",
- totalNetworkPartitionGroups, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- int currentPartitionIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().intValue();
- if (log.isDebugEnabled()) {
- String msg = String.format("Current network partition group index is %s [application-id] %s [application-policy-d]",
- currentPartitionIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- if (currentPartitionIndex >= totalNetworkPartitionGroups) {
- if (log.isDebugEnabled()) {
- String msg = String.format("currentPartitionIndex >= totalNetworkPartitionGroups, hence no more network partition groups are available "
- + "[application-id] %s [application-policy-d]", currentPartitionIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
- return null;
- }
-
- int selectedIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().incrementAndGet();
- if (log.isDebugEnabled()) {
- String msg = String.format("Selected network partition group index is %s (starting from 1,2,3...) [application-id] %s [application-policy-d]",
- selectedIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- if (log.isDebugEnabled()) {
- String msg = String.format("Selected network partition group is %s [application-id] %s [application-policy-d]",
- networkPartitionGroups[selectedIndex-1], applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- String[] selectedNetworkPartitions = networkPartitionGroups[selectedIndex-1].split(StratosConstants.APPLICATION_POLICY_NETWORK_PARTITIONS_SPLITTER);
- if (selectedNetworkPartitions == null) {
- return null;
- }
-
- return Arrays.asList(selectedNetworkPartitions);
- }
-
- String[] networkPartitions = applicationPolicy.getNetworkPartitions();
- if (networkPartitions == null || networkPartitions.length == 0) {
- if (log.isWarnEnabled()) {
- String msg = String.format("Network partitions found in application policy [application-id] %s [application-policy-id] %s",
- applicationId, applicatioinPolicyId);
- log.warn(msg);
- }
- return null;
- }
-
- int totalNetworkPartitions = networkPartitions.length;
- if (log.isDebugEnabled()) {
- String msg = String.format("%s network partitions found in application policy [application-id] %s [application-policy-id] %s",
- totalNetworkPartitions, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- int currentPartitionIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().intValue();
- if (log.isDebugEnabled()) {
- String msg = String.format("Current network partition index is %s [application-id] %s [application-policy-d]",
- currentPartitionIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- if (currentPartitionIndex >= totalNetworkPartitions) {
- if (log.isDebugEnabled()) {
- String msg = String.format("currentPartitionIndex >= totalNetworkPartitions, hence no more network partitions are available "
- + "[application-id] %s [application-policy-d]", currentPartitionIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
- return null;
- }
-
- int selectedIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().incrementAndGet();
- if (log.isDebugEnabled()) {
- String msg = String.format("Selected network partition index is %s (starting from 1,2,3...) [application-id] %s [application-policy-d]",
- selectedIndex, applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- if (log.isDebugEnabled()) {
- String msg = String.format("Selected network partition is %s [application-id] %s [application-policy-d]",
- networkPartitions[selectedIndex-1], applicationId, applicatioinPolicyId);
- log.debug(msg);
- }
-
- List<String> nextNetworkPartitions = new ArrayList<String>();
- nextNetworkPartitions.add(networkPartitions[selectedIndex-1]);
-
- return nextNetworkPartitions;
- }
+public class OneAfterAnotherAlgorithm implements NetworkPartitionAlgorithm {
+
+ private static final Log log = LogFactory.getLog(NetworkPartitionAlgorithm.class);
+
+ @Override
+ public List<String> getNextNetworkPartitions(NetworkPartitionAlgorithmContext networkPartitionAlgorithmContext) {
+
+ if (networkPartitionAlgorithmContext == null) {
+ if (log.isWarnEnabled()) {
+ String msg = "Network partition algorithm context is null";
+ log.warn(msg);
+ }
+ return null;
+ }
+
+ String applicationId = networkPartitionAlgorithmContext.getApplicationId();
+ if (applicationId == null) {
+ if (log.isWarnEnabled()) {
+ String msg = "Application id is null in etwork partition algorithm context";
+ log.warn(msg);
+ }
+ return null;
+ }
+
+ ApplicationPolicy applicationPolicy = networkPartitionAlgorithmContext.getApplicationPolicy();
+ if (applicationPolicy == null) {
+ if (log.isWarnEnabled()) {
+ String msg = String.format("No application policy found in network partition algorithm context [application-id] %s", applicationId);
+ log.warn(msg);
+ }
+ return null;
+ }
+
+ String applicatioinPolicyId = applicationPolicy.getId();
+ String[] networkPartitionGroups = applicationPolicy.getNetworkPartitionGroups();
+ if (networkPartitionGroups != null && networkPartitionGroups.length != 0) {
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Network partition groups property found in application policy [application-id] %s [application-policy-id] %s. "
+ + "Hence using network partition groups for app bursting", applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+ int totalNetworkPartitionGroups = networkPartitionGroups.length;
+ if (log.isDebugEnabled()) {
+ String msg = String.format("%s network partition groups found in application policy [application-id] %s [application-policy-id] %s",
+ totalNetworkPartitionGroups, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ int currentPartitionIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().intValue();
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Current network partition group index is %s [application-id] %s [application-policy-d]",
+ currentPartitionIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ if (currentPartitionIndex >= totalNetworkPartitionGroups) {
+ if (log.isDebugEnabled()) {
+ String msg = String.format("currentPartitionIndex >= totalNetworkPartitionGroups, hence no more network partition groups are available "
+ + "[application-id] %s [application-policy-d]", currentPartitionIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+ return null;
+ }
+
+ int selectedIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().incrementAndGet();
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Selected network partition group index is %s (starting from 1,2,3...) [application-id] %s [application-policy-d]",
+ selectedIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Selected network partition group is %s [application-id] %s [application-policy-d]",
+ networkPartitionGroups[selectedIndex - 1], applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ String[] selectedNetworkPartitions = networkPartitionGroups[selectedIndex - 1].split(StratosConstants.APPLICATION_POLICY_NETWORK_PARTITIONS_SPLITTER);
+ if (selectedNetworkPartitions == null) {
+ return null;
+ }
+
+ return Arrays.asList(selectedNetworkPartitions);
+ }
+
+ String[] networkPartitions = applicationPolicy.getNetworkPartitions();
+ if (networkPartitions == null || networkPartitions.length == 0) {
+ if (log.isWarnEnabled()) {
+ String msg = String.format("Network partitions found in application policy [application-id] %s [application-policy-id] %s",
+ applicationId, applicatioinPolicyId);
+ log.warn(msg);
+ }
+ return null;
+ }
+
+ int totalNetworkPartitions = networkPartitions.length;
+ if (log.isDebugEnabled()) {
+ String msg = String.format("%s network partitions found in application policy [application-id] %s [application-policy-id] %s",
+ totalNetworkPartitions, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ int currentPartitionIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().intValue();
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Current network partition index is %s [application-id] %s [application-policy-d]",
+ currentPartitionIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ if (currentPartitionIndex >= totalNetworkPartitions) {
+ if (log.isDebugEnabled()) {
+ String msg = String.format("currentPartitionIndex >= totalNetworkPartitions, hence no more network partitions are available "
+ + "[application-id] %s [application-policy-d]", currentPartitionIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+ return null;
+ }
+
+ int selectedIndex = networkPartitionAlgorithmContext.getCurrentNetworkPartitionIndex().incrementAndGet();
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Selected network partition index is %s (starting from 1,2,3...) [application-id] %s [application-policy-d]",
+ selectedIndex, applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ if (log.isDebugEnabled()) {
+ String msg = String.format("Selected network partition is %s [application-id] %s [application-policy-d]",
+ networkPartitions[selectedIndex - 1], applicationId, applicatioinPolicyId);
+ log.debug(msg);
+ }
+
+ List<String> nextNetworkPartitions = new ArrayList<String>();
+ nextNetworkPartitions.add(networkPartitions[selectedIndex - 1]);
+
+ return nextNetworkPartitions;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/OneAfterAnother.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/OneAfterAnother.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/OneAfterAnother.java
index d3c916b..a6b6386 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/OneAfterAnother.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/OneAfterAnother.java
@@ -37,13 +37,13 @@ public class OneAfterAnother implements PartitionAlgorithm {
@Override
public PartitionContext getNextScaleUpPartitionContext(PartitionContext[] partitionContexts) {
- for(PartitionContext partitionContext : partitionContexts) {
+ for (PartitionContext partitionContext : partitionContexts) {
- if(partitionContext.getNonTerminatedMemberCount() < partitionContext.getMax()) {
+ if (partitionContext.getNonTerminatedMemberCount() < partitionContext.getMax()) {
- if(log.isDebugEnabled()){
+ if (log.isDebugEnabled()) {
log.debug(String.format("[one-after-another algorithm] [scale-up] [partition] %s has space to create " +
- "members. [non terminated count] %s [max] %s", partitionContext.getPartitionId(),
+ "members. [non terminated count] %s [max] %s", partitionContext.getPartitionId(),
partitionContext.getNonTerminatedMemberCount(), partitionContext.getMax()));
}
return partitionContext;
@@ -55,13 +55,13 @@ public class OneAfterAnother implements PartitionAlgorithm {
@Override
public PartitionContext getNextScaleDownPartitionContext(PartitionContext[] partitionContexts) {
- for(int partitionIndex = partitionContexts.length - 1; partitionIndex >= 0; partitionIndex--) {
+ for (int partitionIndex = partitionContexts.length - 1; partitionIndex >= 0; partitionIndex--) {
- if(partitionContexts[partitionIndex].getNonTerminatedMemberCount() > 0) {
+ if (partitionContexts[partitionIndex].getNonTerminatedMemberCount() > 0) {
- if(log.isDebugEnabled()){
+ if (log.isDebugEnabled()) {
log.debug(String.format("[one-after-another algorithm] [scale-down] [partition] %s has members that" +
- " can be removed. [non terminated count] %s",
+ " can be removed. [non terminated count] %s",
partitionContexts[partitionIndex].getPartitionId(),
partitionContexts[partitionIndex].getNonTerminatedMemberCount()));
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/RoundRobin.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/RoundRobin.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/RoundRobin.java
index 4977cfd..d274d0f 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/RoundRobin.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithms/partition/RoundRobin.java
@@ -25,43 +25,42 @@ import org.apache.stratos.autoscaler.algorithms.PartitionAlgorithm;
import org.apache.stratos.autoscaler.context.partition.PartitionContext;
/**
-* This class is used for selecting a {@link PartitionContext} in round robin manner and checking availability of
+ * This class is used for selecting a {@link PartitionContext} in round robin manner and checking availability of
* {@link PartitionContext}s according to the partitions defined
* in {@link org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy}
- *
-*/
-public class RoundRobin implements PartitionAlgorithm{
+ */
+public class RoundRobin implements PartitionAlgorithm {
- private static final Log log = LogFactory.getLog(RoundRobin.class);
+ private static final Log log = LogFactory.getLog(RoundRobin.class);
@Override
public PartitionContext getNextScaleUpPartitionContext(PartitionContext[] partitionContexts) {
-
- if (partitionContexts == null) {
- return null;
- }
+
+ if (partitionContexts == null) {
+ return null;
+ }
int selectedIndex = 0;
int lowestInstanceCount = partitionContexts[0].getNonTerminatedMemberCount();
- for(int partitionIndex = 0; partitionIndex < partitionContexts.length; partitionIndex++) {
-
- // it means we have to choose the current partitionIndex, no need to continue the loop
- if (lowestInstanceCount == 0) {
- break;
- }
-
- if(partitionContexts[partitionIndex].getNonTerminatedMemberCount() < lowestInstanceCount) {
+ for (int partitionIndex = 0; partitionIndex < partitionContexts.length; partitionIndex++) {
+
+ // it means we have to choose the current partitionIndex, no need to continue the loop
+ if (lowestInstanceCount == 0) {
+ break;
+ }
+
+ if (partitionContexts[partitionIndex].getNonTerminatedMemberCount() < lowestInstanceCount) {
lowestInstanceCount = partitionContexts[partitionIndex].getNonTerminatedMemberCount();
selectedIndex = partitionIndex;
}
}
- if(partitionContexts[selectedIndex].getNonTerminatedMemberCount() < partitionContexts[selectedIndex].getMax()) {
+ if (partitionContexts[selectedIndex].getNonTerminatedMemberCount() < partitionContexts[selectedIndex].getMax()) {
- if(log.isDebugEnabled()){
+ if (log.isDebugEnabled()) {
log.debug(String.format("[round-robin algorithm] [scale-up] [partition] %s has space to create members. " +
- "[non terminated count] %s [max] %s"
+ "[non terminated count] %s [max] %s"
, partitionContexts[selectedIndex].getPartitionId(),
partitionContexts[selectedIndex].getNonTerminatedMemberCount(),
partitionContexts[selectedIndex].getMax()));
@@ -76,27 +75,27 @@ public class RoundRobin implements PartitionAlgorithm{
@Override
public PartitionContext getNextScaleDownPartitionContext(PartitionContext[] partitionContexts) {
- if (partitionContexts == null) {
- return null;
- }
-
+ if (partitionContexts == null) {
+ return null;
+ }
+
int selectedIndex = 0;
int highestInstanceCount = partitionContexts[0].getNonTerminatedMemberCount();
- for(int partitionIndex = partitionContexts.length - 1; partitionIndex >= 0; partitionIndex--) {
+ for (int partitionIndex = partitionContexts.length - 1; partitionIndex >= 0; partitionIndex--) {
- if(partitionContexts[partitionIndex].getNonTerminatedMemberCount() > highestInstanceCount) {
+ if (partitionContexts[partitionIndex].getNonTerminatedMemberCount() > highestInstanceCount) {
highestInstanceCount = partitionContexts[partitionIndex].getNonTerminatedMemberCount();
selectedIndex = partitionIndex;
}
}
- if(partitionContexts[selectedIndex].getNonTerminatedMemberCount() < partitionContexts[selectedIndex].getMax()) {
+ if (partitionContexts[selectedIndex].getNonTerminatedMemberCount() < partitionContexts[selectedIndex].getMax()) {
- if(log.isDebugEnabled()){
+ if (log.isDebugEnabled()) {
log.debug(String.format("[round-robin algorithm] [scale-down] [partition] %s has has members that" +
- " can be removed.[non terminated count] %s ", partitionContexts[selectedIndex].getPartitionId(),
+ " can be removed.[non terminated count] %s ", partitionContexts[selectedIndex].getPartitionId(),
partitionContexts[selectedIndex].getNonTerminatedMemberCount()));
}
return partitionContexts[selectedIndex];
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationHolder.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationHolder.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationHolder.java
index 2f09880..47c3a8b 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationHolder.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationHolder.java
@@ -36,38 +36,38 @@ public class ApplicationHolder {
private static ReadWriteLock lock = new ReadWriteLock("application-holder");
- private ApplicationHolder () {
+ private ApplicationHolder() {
}
public static void acquireReadLock() {
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug("Read lock acquired");
}
lock.acquireReadLock();
}
public static void releaseReadLock() {
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug("Read lock released");
}
lock.releaseReadLock();
}
public static void acquireWriteLock() {
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug("Write lock acquired");
}
lock.acquireWriteLock();
}
public static void releaseWriteLock() {
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug("Write lock released");
}
lock.releaseWriteLock();
}
- public static Applications getApplications () {
+ public static Applications getApplications() {
if (applications == null) {
synchronized (ApplicationHolder.class) {
if (applications == null) {
@@ -89,7 +89,7 @@ public class ApplicationHolder {
return applications;
}
- public static void persistApplication (Application application) {
+ public static void persistApplication(Application application) {
synchronized (ApplicationHolder.class) {
getApplications().addApplication(application);
AutoscalerUtil.persistApplication(application);
@@ -99,7 +99,7 @@ public class ApplicationHolder {
}
}
- public static void removeApplication (String applicationId) {
+ public static void removeApplication(String applicationId) {
synchronized (ApplicationHolder.class) {
getApplications().removeApplication(applicationId);
AutoscalerUtil.removeApplication(applicationId);
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationUtils.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationUtils.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationUtils.java
index f9999bb..daf182e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationUtils.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ApplicationUtils.java
@@ -42,11 +42,11 @@ public class ApplicationUtils {
public static final String PAYLOAD_PARAMETER = "payload_parameter.";
private static Pattern ALIAS_PATTERN = Pattern.compile("([a-z0-9]+([-][a-z0-9])*)+");
- public static boolean isAliasValid (String alias) {
+ public static boolean isAliasValid(String alias) {
return ALIAS_PATTERN.matcher(alias).matches();
}
- public static boolean isValid (String arg) {
+ public static boolean isValid(String arg) {
if (arg == null || arg.isEmpty()) {
return false;
} else {
@@ -54,7 +54,7 @@ public class ApplicationUtils {
}
}
- public static Properties getGlobalPayloadData () {
+ public static Properties getGlobalPayloadData() {
Properties globalProperties = new Properties();
@@ -74,7 +74,7 @@ public class ApplicationUtils {
return globalProperties;
}
- private static String createPortMappingPayloadString (Cartridge cartridge) {
+ private static String createPortMappingPayloadString(Cartridge cartridge) {
// port mappings
StringBuilder portMapBuilder = new StringBuilder();
@@ -90,7 +90,7 @@ public class ApplicationUtils {
return portMappingString;
}
- public static StringBuilder getTextPayload (String appId, String groupName, String clusterId) {
+ public static StringBuilder getTextPayload(String appId, String groupName, String clusterId) {
StringBuilder payloadBuilder = new StringBuilder();
payloadBuilder.append("APP_ID=" + appId);
@@ -118,25 +118,25 @@ public class ApplicationUtils {
payloadBuilder.append("PUPPET_DNS_AVAILABLE=" + System.getProperty("puppet.dns.available"));
}
// meta data endpoint
- // if (MetaDataClientConfig.getInstance().getMetaDataServiceBaseUrl() != null) {
- // TODO
- //payloadBuilder.append(",");
- //payloadBuilder.append("METADATA_ENDPOINT=" + MetaDataClientConfig.getInstance().getMetaDataServiceBaseUrl());
- // }
+ // if (MetaDataClientConfig.getInstance().getMetaDataServiceBaseUrl() != null) {
+ // TODO
+ //payloadBuilder.append(",");
+ //payloadBuilder.append("METADATA_ENDPOINT=" + MetaDataClientConfig.getInstance().getMetaDataServiceBaseUrl());
+ // }
payloadBuilder.append(",");
return payloadBuilder;
}
public static PayloadData createPayload(String appId, String groupName, Cartridge cartridge, String subscriptionKey, int tenantId, String clusterId,
- String hostName, String repoUrl, String alias, Map<String, String> customPayloadEntries, String[] dependencyAliases,
- org.apache.stratos.common.Properties properties, String oauthToken,String[] dependencyClusterIDs,
+ String hostName, String repoUrl, String alias, Map<String, String> customPayloadEntries, String[] dependencyAliases,
+ org.apache.stratos.common.Properties properties, String oauthToken, String[] dependencyClusterIDs,
String[] exportMetadata, String[] importMetadata)
throws ApplicationDefinitionException {
//Create the payload
BasicPayloadData basicPayloadData = createBasicPayload(appId, groupName, cartridge, subscriptionKey,
- clusterId, hostName, repoUrl, alias, tenantId, dependencyAliases, dependencyClusterIDs,exportMetadata,importMetadata);
+ clusterId, hostName, repoUrl, alias, tenantId, dependencyAliases, dependencyClusterIDs, exportMetadata, importMetadata);
//Populate the basic payload details
basicPayloadData.populatePayload();
@@ -173,25 +173,25 @@ public class ApplicationUtils {
}
}
-
+
// get subscription payload parameters (MB_IP, MB_PORT so on) and set them to payload (kubernetes scenario)
if (properties != null && properties.getProperties() != null && properties.getProperties().length != 0) {
- for (Property property : properties.getProperties()) {
- if (property.getName().startsWith(PAYLOAD_PARAMETER)) {
+ for (Property property : properties.getProperties()) {
+ if (property.getName().startsWith(PAYLOAD_PARAMETER)) {
String payloadParamName = property.getName();
String payloadParamSubstring = payloadParamName.substring(payloadParamName.indexOf(".") + 1);
payloadData.add(payloadParamSubstring, property.getValue());
- }
- }
- }
+ }
+ }
+ }
- if(!StringUtils.isEmpty(oauthToken)){
+ if (!StringUtils.isEmpty(oauthToken)) {
payloadData.add(TOKEN_PAYLOAD_PARAM_NAME, oauthToken);
}
//check if there are any custom payload entries defined
if (customPayloadEntries != null) {
//add them to the payload
- Set<Map.Entry<String,String>> entrySet = customPayloadEntries.entrySet();
+ Set<Map.Entry<String, String>> entrySet = customPayloadEntries.entrySet();
for (Map.Entry<String, String> entry : entrySet) {
payloadData.add(entry.getKey(), entry.getValue());
}
@@ -203,8 +203,8 @@ public class ApplicationUtils {
private static BasicPayloadData createBasicPayload(String appId, String groupName, Cartridge cartridge,
String subscriptionKey, String clusterId,
String hostName, String repoUrl, String alias,
- int tenantId, String[] dependencyAliases,String[] dependencyCLusterIDs,
- String[] exportMetadata,String[] importMetadata) {
+ int tenantId, String[] dependencyAliases, String[] dependencyCLusterIDs,
+ String[] exportMetadata, String[] importMetadata) {
BasicPayloadData basicPayloadData = new BasicPayloadData();
basicPayloadData.setAppId(appId);
@@ -217,7 +217,7 @@ public class ApplicationUtils {
basicPayloadData.setServiceName(cartridge.getType());
basicPayloadData.setProvider(cartridge.getProvider());
- if(repoUrl != null) {
+ if (repoUrl != null) {
basicPayloadData.setGitRepositoryUrl(repoUrl);
}
@@ -237,9 +237,9 @@ public class ApplicationUtils {
basicPayloadData.setTenantRange("*");
basicPayloadData.setDependencyAliases(dependencyAliases);
- basicPayloadData.setDependencyClusterIDs(dependencyCLusterIDs);
- basicPayloadData.setExportMetadataKeys(exportMetadata);
- basicPayloadData.setImportMetadataKeys(importMetadata);
+ basicPayloadData.setDependencyClusterIDs(dependencyCLusterIDs);
+ basicPayloadData.setExportMetadataKeys(exportMetadata);
+ basicPayloadData.setImportMetadataKeys(importMetadata);
return basicPayloadData;
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ClusterInformation.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ClusterInformation.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ClusterInformation.java
index 1ecca4d..ae3b0d3 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ClusterInformation.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/ClusterInformation.java
@@ -21,7 +21,7 @@ package org.apache.stratos.autoscaler.applications;
public interface ClusterInformation {
- public String getClusterId (String applicationId, String alias, String cartridgeType);
+ public String getClusterId(String applicationId, String alias, String cartridgeType);
- public String getHostName (String applicationId, String alias, String cartridgeDefinitionHostName);
+ public String getHostName(String applicationId, String alias, String cartridgeDefinitionHostName);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/MTClusterInformation.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/MTClusterInformation.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/MTClusterInformation.java
index 6c8e559..598d17b 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/MTClusterInformation.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/MTClusterInformation.java
@@ -29,7 +29,7 @@ public class MTClusterInformation implements ClusterInformation {
throw new IllegalArgumentException("Invalid cartridge type value provided: [ " + cartridgeType + " ]");
}
- return applicationId + "." + alias + "."+cartridgeType + ".domain";
+ return applicationId + "." + alias + "." + cartridgeType + ".domain";
}
@Override
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/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 366171f..fe14f7f 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
@@ -49,11 +49,12 @@ public class DependencyBuilder {
/**
* This will build the dependency tree based on the given dependencies
+ *
* @param component it will give the necessary information to build the tree
* @return the dependency tree out of the dependency orders
*/
public DependencyTree buildDependency(ParentComponent component)
- throws DependencyBuilderException{
+ throws DependencyBuilderException {
String identifier = component.getUniqueIdentifier();
DependencyTree dependencyTree = new DependencyTree(identifier);
@@ -90,7 +91,7 @@ public class DependencyBuilder {
if (startupOrderComponent != null) {
log.debug(String.format("Processing startup order element: " +
"[component] %s [startup-order] %s [element] %s",
- identifier, startupOrder, startupOrderComponent));
+ identifier, startupOrder, startupOrderComponent));
ApplicationChildContext applicationChildContext = ApplicationChildContextFactory.
createApplicationChildContext(identifier, startupOrderComponent,
@@ -126,18 +127,18 @@ public class DependencyBuilder {
parentContext = existingApplicationChildContext;
if (log.isDebugEnabled()) {
log.debug(String.format("Element [%s] was found in the dependency tree," +
- " making it the parent and continuing: [dependency-tree] %s",
+ " making it the parent and continuing: [dependency-tree] %s",
existingApplicationChildContext.getId(), dependencyTree));
}
} else {
// Dependency tree is already built for the startup order up to some extent
ApplicationChildContext existingParentContext =
dependencyTree.findParentContextWithId(applicationChildContext.getId());
- if((existingParentContext != null) &&
+ if ((existingParentContext != null) &&
(existingParentContext.getId().equals(existingApplicationChildContext.getId()))) {
// Application child context is already available in the dependency tree,
// find its parent element, mark it as the parent element and continue
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug(String.format("Found an existing parent element [%s] in the " +
"dependency tree, making it the parent " +
"and continuing: [dependency-tree] %s",
@@ -177,20 +178,18 @@ public class DependencyBuilder {
}
}
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug(String.format("Dependency tree generated: [component] %s [tree] %s",
component.getUniqueIdentifier(), dependencyTree.toString()));
}
return dependencyTree;
}
-
+
/**
- *
* Utility method to build scaling dependencies
- *
*/
- public Set<ScalingDependentList> buildScalingDependencies(ParentComponent component) {
- Set<ScalingDependentList> scalingDependentLists = new HashSet<ScalingDependentList>();
+ public Set<ScalingDependentList> buildScalingDependencies(ParentComponent component) {
+ Set<ScalingDependentList> scalingDependentLists = new HashSet<ScalingDependentList>();
if (component.getDependencyOrder() != null && component.getDependencyOrder().getScalingDependents() != null) {
@@ -205,10 +204,10 @@ public class DependencyBuilder {
String id = getClusterFromStartupOrder(string);
//getting the cluster-id from cluster alias
- if(component.getClusterDataForAlias().containsKey(id)) {
+ if (component.getClusterDataForAlias().containsKey(id)) {
ClusterDataHolder clusterDataHolder = (ClusterDataHolder) component.getClusterDataForAlias().get(id);
scalingDependencies.add(clusterDataHolder.getClusterId());
- } else{
+ } else {
log.warn("[Scaling Dependency Id]: " + id + " is not a defined cartridge or group. " +
"Therefore scaling dependent will not be effective");
@@ -224,7 +223,7 @@ public class DependencyBuilder {
}
}
- return scalingDependentLists;
+ return scalingDependentLists;
}
/**
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/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 e0da8b6..8d97542 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
@@ -111,7 +111,7 @@ public class DependencyTree {
private ApplicationChildContext findParentContextWithId(ApplicationChildContext parent, String id,
- List<ApplicationChildContext> contexts) {
+ List<ApplicationChildContext> contexts) {
for (ApplicationChildContext context : contexts) {
//TODO check for the status
if (context.getId().equals(id)) {
@@ -150,8 +150,8 @@ public class DependencyTree {
}
public List<ApplicationChildContext> getStarAbleDependenciesByTermination(
- ParentComponentMonitor monitor,
- String instanceId) {
+ ParentComponentMonitor monitor,
+ String instanceId) {
//Breadth First search over the graph to find out which level has the terminated contexts
return traverseGraphByLevel(this.primaryApplicationContextList, monitor, instanceId);
@@ -161,22 +161,21 @@ public class DependencyTree {
private List<ApplicationChildContext> traverseGraphByLevel(List<ApplicationChildContext> contexts,
ParentComponentMonitor parentMonitor,
String instanceId) {
- for(ApplicationChildContext context : contexts) {
+ for (ApplicationChildContext context : contexts) {
Monitor monitor = parentMonitor.getMonitor(context.getId());
- if(monitor.getInstance(instanceId) == null ||
+ if (monitor.getInstance(instanceId) == null ||
monitor.getInstancesByParentInstanceId(instanceId).isEmpty()) {
return contexts;
}
}
- for(ApplicationChildContext context : contexts) {
+ for (ApplicationChildContext context : contexts) {
return traverseGraphByLevel(context.getApplicationChildContextList(), parentMonitor, instanceId);
}
return null;
}
-
/**
* When one group/cluster terminates/in_maintenance, need to consider about other
* dependencies
@@ -193,7 +192,7 @@ public class DependencyTree {
findAllChildrenOfAppContext(applicationContext.getApplicationChildContextList(),
allChildrenOfAppContext);
//If only particular cluster, then no need to terminated it.
- if(allChildrenOfAppContext.size() > 0) {
+ if (allChildrenOfAppContext.size() > 0) {
//adding the terminated one to the list
allChildrenOfAppContext.add(applicationContext);
}
@@ -211,6 +210,7 @@ public class DependencyTree {
public List<ApplicationChildContext> getScalingDependencies(String id) {
return null;
}
+
/**
* This will help to find out all the children of a particular node
*
@@ -219,7 +219,7 @@ public class DependencyTree {
* @return all the children of the given node
*/
public List<ApplicationChildContext> findAllChildrenOfAppContext(List<ApplicationChildContext> applicationContexts,
- List<ApplicationChildContext> childContexts) {
+ List<ApplicationChildContext> childContexts) {
for (ApplicationChildContext context : applicationContexts) {
childContexts.add(context);
findAllChildrenOfAppContext(context.getApplicationChildContextList(), childContexts);
@@ -259,8 +259,8 @@ public class DependencyTree {
@Override
public String toString() {
StringBuilder stringBuilder = new StringBuilder();
- if(primaryApplicationContextList != null) {
- for(ApplicationChildContext applicationChildContext : primaryApplicationContextList) {
+ if (primaryApplicationContextList != null) {
+ for (ApplicationChildContext applicationChildContext : primaryApplicationContextList) {
buildTreeStructure(applicationChildContext, stringBuilder);
}
}
@@ -268,12 +268,12 @@ public class DependencyTree {
}
private void buildTreeStructure(ApplicationChildContext applicationChildContext, StringBuilder stringBuilder) {
- if(applicationChildContext != null) {
- if(StringUtils.isNotBlank(stringBuilder.toString())) {
+ if (applicationChildContext != null) {
+ if (StringUtils.isNotBlank(stringBuilder.toString())) {
stringBuilder.append(" --> ");
}
stringBuilder.append(applicationChildContext.getId());
- for(ApplicationChildContext childContext : applicationChildContext.getApplicationChildContextList()) {
+ for (ApplicationChildContext childContext : applicationChildContext.getApplicationChildContextList()) {
buildTreeStructure(childContext, stringBuilder);
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContext.java
index 9b0d077..b5a4a39 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContext.java
@@ -60,7 +60,7 @@ public abstract class ApplicationChildContext {
}
public void addStatusToLIfeCycle(ClusterStatus status) {
- this.statusLifeCycle.push(status);
+ this.statusLifeCycle.push(status);
}
public String getId() {
@@ -85,7 +85,7 @@ public abstract class ApplicationChildContext {
public boolean hasChild() {
boolean hasChild;
- if(this.applicationChildContextList.isEmpty()) {
+ if (this.applicationChildContextList.isEmpty()) {
hasChild = false;
} else {
hasChild = true;
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContextFactory.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContextFactory.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContextFactory.java
index 13f1139..0c8fe9f 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContextFactory.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ApplicationChildContextFactory.java
@@ -34,9 +34,9 @@ public class ApplicationChildContextFactory {
/**
* Will create and return GroupChildContext/ClusterChildContext based on the type in start order/scaling order
*
- * @param startUpOrder reference of group/cluster in the start/scaling order
- * @param component The component which used to build the dependency
- * @param tree kill dependent behaviour of this component
+ * @param startUpOrder reference of group/cluster in the start/scaling order
+ * @param component The component which used to build the dependency
+ * @param tree kill dependent behaviour of this component
* @return Context
*/
public static ApplicationChildContext createApplicationChildContext(String componentId, String startUpOrder,
@@ -56,29 +56,31 @@ public class ApplicationChildContextFactory {
return createClusterChildContext(clusterDataHolder, hasDependents);
} else {
throw new RuntimeException(String.format("Startup order contains an unknown reference: " +
- "[component] %s [startup-order] %s", componentId, startUpOrder));
+ "[component] %s [startup-order] %s", componentId, startUpOrder));
}
}
- /**
- * Get cluster child context
- * @param dataHolder Cluster Data holder
- * @param isKillDependent Whether is this a kill dependant or not
- * @return ApplicationChildContext
- */
+ /**
+ * Get cluster child context
+ *
+ * @param dataHolder Cluster Data holder
+ * @param isKillDependent Whether is this a kill dependant or not
+ * @return ApplicationChildContext
+ */
public static ApplicationChildContext createClusterChildContext(ClusterDataHolder dataHolder,
boolean isKillDependent) {
ClusterChildContext clusterChildContext = new ClusterChildContext(dataHolder.getClusterId(), isKillDependent);
clusterChildContext.setServiceName(dataHolder.getServiceType());
- return clusterChildContext;
+ return clusterChildContext;
}
- /**
- * Get the group child context
- * @param id ID of the group
- * @param isDependent Whether is this a dependant or not
- * @return ApplicationChildContext
- */
+ /**
+ * Get the group child context
+ *
+ * @param id ID of the group
+ * @param isDependent Whether is this a dependant or not
+ * @return ApplicationChildContext
+ */
public static ApplicationChildContext createGroupChildContext(String id, boolean isDependent) {
GroupChildContext groupChildContext = new GroupChildContext(id, isDependent);
return groupChildContext;
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ClusterChildContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ClusterChildContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ClusterChildContext.java
index 39d2d91..19f3135 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ClusterChildContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/ClusterChildContext.java
@@ -25,7 +25,7 @@ public class ClusterChildContext extends ApplicationChildContext {
private String serviceName;
public ClusterChildContext(String id, boolean killDependent) {
- super(id ,killDependent);
+ super(id, killDependent);
}
public String getServiceName() {
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/GroupChildContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/GroupChildContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/GroupChildContext.java
index b844144..965db26 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/GroupChildContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/dependency/context/GroupChildContext.java
@@ -21,6 +21,6 @@ package org.apache.stratos.autoscaler.applications.dependency.context;
public class GroupChildContext extends ApplicationChildContext {
public GroupChildContext(String id, boolean killDependent) {
- super(id ,killDependent);
+ super(id, killDependent);
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/506affb8/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/ApplicationParser.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/ApplicationParser.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/ApplicationParser.java
index 3f4d2b4..6119e0e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/ApplicationParser.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/applications/parser/ApplicationParser.java
@@ -41,13 +41,13 @@ public interface ApplicationParser {
* @return Application structure denoting the parsed Application
* @throws ApplicationDefinitionException If the Application Definition is invalid
*/
- public Application parse (ApplicationContext applicationContext) throws ApplicationDefinitionException;
+ public Application parse(ApplicationContext applicationContext) throws ApplicationDefinitionException;
/**
* Returns a set of ApplicationClusterContext which will comprise of cluster related information
* extracted from the Application definition
*
- * @return Set of ApplicationClusterContext objects
+ * @return Set of ApplicationClusterContext objects
* @throws ApplicationDefinitionException if any error occurs
*/
public List<ApplicationClusterContext> getApplicationClusterContexts() throws ApplicationDefinitionException;