fixing NPE while instance creation
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/b59adf8f Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/b59adf8f Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/b59adf8f Branch: refs/heads/master Commit: b59adf8f90f73cf69a016f11e1cd4e9c81c0572d Parents: 95dd154 Author: reka <[email protected]> Authored: Wed Dec 3 18:17:08 2014 +0530 Committer: reka <[email protected]> Committed: Wed Dec 3 18:17:08 2014 +0530 ---------------------------------------------------------------------- .../autoscaler/api/AutoScalerServiceImpl.java | 21 ++++++++++---------- .../AutoscalerTopologyEventReceiver.java | 10 ++++++---- 2 files changed, 17 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/b59adf8f/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java index 5fc9a3a..7733520 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java @@ -22,14 +22,14 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.stratos.autoscaler.applications.ApplicationHolder; -import org.apache.stratos.autoscaler.context.AutoscalerContext; -//import org.apache.stratos.autoscaler.NetworkPartitionLbHolder; import org.apache.stratos.autoscaler.applications.parser.ApplicationParser; import org.apache.stratos.autoscaler.applications.parser.DefaultApplicationParser; import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext; import org.apache.stratos.autoscaler.applications.topic.ApplicationBuilder; import org.apache.stratos.autoscaler.client.CloudControllerClient; -import org.apache.stratos.autoscaler.exception.*; +import org.apache.stratos.autoscaler.context.AutoscalerContext; +import org.apache.stratos.autoscaler.exception.AutoScalerException; +import org.apache.stratos.autoscaler.exception.InvalidArgumentException; import org.apache.stratos.autoscaler.exception.application.ApplicationDefinitionException; import org.apache.stratos.autoscaler.exception.kubernetes.*; import org.apache.stratos.autoscaler.exception.partition.PartitionValidationException; @@ -37,13 +37,12 @@ import org.apache.stratos.autoscaler.exception.policy.InvalidPolicyException; import org.apache.stratos.autoscaler.interfaces.AutoScalerServiceInterface; import org.apache.stratos.autoscaler.kubernetes.KubernetesManager; import org.apache.stratos.autoscaler.monitor.cluster.AbstractClusterMonitor; -import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.ApplicationLevelNetworkPartition; -//import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.PartitionManager; import org.apache.stratos.autoscaler.pojo.Dependencies; import org.apache.stratos.autoscaler.pojo.ServiceGroup; import org.apache.stratos.autoscaler.pojo.policy.PolicyManager; import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy; import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy; +import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.ApplicationLevelNetworkPartition; import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition; import org.apache.stratos.autoscaler.registry.RegistryManager; import org.apache.stratos.autoscaler.util.AutoscalerUtil; @@ -53,7 +52,6 @@ import org.apache.stratos.common.kubernetes.KubernetesGroup; import org.apache.stratos.common.kubernetes.KubernetesHost; import org.apache.stratos.common.kubernetes.KubernetesMaster; import org.apache.stratos.messaging.domain.applications.Application; -import org.apache.stratos.messaging.message.receiver.topology.TopologyManager; import org.apache.stratos.metadata.client.defaults.DefaultMetaDataServiceClient; import org.apache.stratos.metadata.client.defaults.MetaDataServiceClient; import org.apache.stratos.metadata.client.exception.MetaDataServiceClientException; @@ -63,13 +61,16 @@ import java.text.MessageFormat; import java.util.ArrayList; import java.util.Map; +//import org.apache.stratos.autoscaler.NetworkPartitionLbHolder; +//import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.PartitionManager; + /** * Auto Scaler Service API is responsible getting Partitions and Policies. */ public class AutoScalerServiceImpl implements AutoScalerServiceInterface { private static final Log log = LogFactory.getLog(AutoScalerServiceImpl.class); -// PartitionManager partitionManager = PartitionManager.getInstance(); + // PartitionManager partitionManager = PartitionManager.getInstance(); KubernetesManager kubernetesManager = KubernetesManager.getInstance(); // // public Partition[] getAllAvailablePartitions() { @@ -122,7 +123,7 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface { try { Application application = ApplicationHolder.getApplications(). getApplication(deploymentPolicy.getApplicationId()); - if(application != null) { + if (application != null) { allClusterInitialized = AutoscalerUtil.allClustersInitialized(application); } @@ -130,7 +131,7 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface { ApplicationHolder.releaseReadLock(); } - if(allClusterInitialized && !AutoscalerContext.getInstance().containsPendingMonitor(appId)) { + if (allClusterInitialized && !AutoscalerContext.getInstance().containsPendingMonitor(appId)) { AutoscalerUtil.getInstance(). startApplicationMonitor(appId); @@ -244,7 +245,7 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface { return kubernetesManager.updateKubernetesHost(kubernetesHost); } -// @Override + // @Override public Partition[] getPartitionsOfGroup(String deploymentPolicyId, String groupId) { DeploymentPolicy depPol = this.getDeploymentPolicy(deploymentPolicyId); if (null == depPol) { http://git-wip-us.apache.org/repos/asf/stratos/blob/b59adf8f/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java index 89e711f..6251d18 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java @@ -23,6 +23,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.stratos.autoscaler.applications.ApplicationHolder; import org.apache.stratos.autoscaler.context.AutoscalerContext; +import org.apache.stratos.autoscaler.context.cluster.AbstractClusterContext; import org.apache.stratos.autoscaler.context.cluster.ClusterContextFactory; import org.apache.stratos.autoscaler.context.cluster.VMClusterContext; import org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher; @@ -441,10 +442,11 @@ public class AutoscalerTopologyEventReceiver { VMClusterContext clusterContext = (VMClusterContext) clusterMonitor.getClusterContext(); if (clusterContext == null) { - clusterMonitor.setClusterContext( - ClusterContextFactory. - getVMClusterContext(instanceId, - cluster)); + clusterContext = ClusterContextFactory. + getVMClusterContext(instanceId, + cluster); + clusterMonitor.setClusterContext(clusterContext); + } clusterContext.addInstanceContext(instanceId, cluster); if(clusterMonitor.getInstance(instanceId) == null) {
