You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ud...@apache.org on 2013/12/13 19:22:37 UTC

git commit: Added validation for provider for the partition deployment.

Updated Branches:
  refs/heads/master 0a4f79862 -> 68dcc68e0


Added validation for provider for the partition deployment.


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

Branch: refs/heads/master
Commit: 68dcc68e0ff1cac61a19d2a7bf89725c44b5f429
Parents: 0a4f798
Author: Udara Liyanage <ud...@wso2.com>
Authored: Fri Dec 13 23:50:45 2013 -0500
Committer: Udara Liyanage <ud...@wso2.com>
Committed: Fri Dec 13 23:50:45 2013 -0500

----------------------------------------------------------------------
 .../stratos/autoscaler/api/AutoScalerServiceImpl.java     |  4 +++-
 .../autoscaler/interfaces/AutoScalerServiceInterface.java |  4 +++-
 .../stratos/autoscaler/partition/PartitionManager.java    | 10 +++++++---
 .../apache/stratos/autoscaler/policy/PolicyManager.java   |  3 +++
 4 files changed, 16 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/68dcc68e/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 f590364..96b7f11 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
@@ -23,6 +23,8 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
 import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.exception.AutoScalerException;
+import org.apache.stratos.autoscaler.exception.InvalidPartitionException;
 import org.apache.stratos.autoscaler.exception.InvalidPolicyException;
 import org.apache.stratos.autoscaler.exception.NonExistingLBException;
 import org.apache.stratos.autoscaler.exception.PartitionValidationException;
@@ -69,7 +71,7 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface{
 	}
 
 	@Override
-	public boolean addPartition(Partition partition) {
+	public boolean addPartition(Partition partition) throws InvalidPartitionException {
         return partitionManager.addNewPartition(partition);
 	}
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/68dcc68e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
index cb4be60..e6ef5f0 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
@@ -1,6 +1,8 @@
 package org.apache.stratos.autoscaler.interfaces;
 
 import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.exception.AutoScalerException;
+import org.apache.stratos.autoscaler.exception.InvalidPartitionException;
 import org.apache.stratos.autoscaler.exception.InvalidPolicyException;
 import org.apache.stratos.autoscaler.exception.NonExistingLBException;
 import org.apache.stratos.autoscaler.exception.PartitionValidationException;
@@ -11,7 +13,7 @@ import org.apache.stratos.cloud.controller.deployment.partition.Partition;
 public interface AutoScalerServiceInterface {
 	
 	public Partition[] getAllAvailablePartitions();
-	public boolean addPartition(Partition partition);
+	public boolean addPartition(Partition partition) throws InvalidPartitionException;
 	
 	public DeploymentPolicy[] getAllDeploymentPolicies();
 	public boolean addDeploymentPolicy(DeploymentPolicy depPolicy) throws InvalidPolicyException;

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/68dcc68e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
index a199715..7cec277 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
@@ -25,6 +25,7 @@ import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
 import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.AutoScalerException;
+import org.apache.stratos.autoscaler.exception.InvalidPartitionException;
 import org.apache.stratos.autoscaler.exception.PartitionValidationException;
 import org.apache.stratos.autoscaler.registry.RegistryManager;
 import org.apache.stratos.autoscaler.util.AutoScalerConstants;
@@ -85,13 +86,16 @@ private static final Log log = LogFactory.getLog(PartitionManager.class);
 	/*
 	 * Deploy a new partition to Auto Scaler.
 	 */
-	public boolean addNewPartition(Partition partition) throws AutoScalerException{
+	public boolean addNewPartition(Partition partition) throws AutoScalerException, InvalidPartitionException{
+		
+		if(null == partition.getProvider())
+			throw new InvalidPartitionException("Mendatory feild provider has not be set for partition "+ partition.getId());
+		
 		String partitionId = partition.getId();
 		if(this.partitionExist(partition.getId()))
 			throw new AutoScalerException("A parition with the ID " +  partitionId + " already exist.");
 				
-		String resourcePath= this.partitionResourcePath + partition.getId();
-		
+		String resourcePath= this.partitionResourcePath + partition.getId();		
         RegistryManager regManager = RegistryManager.getInstance();     
         
         try {

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/68dcc68e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
index 43c8336..bc3f0f4 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
@@ -115,6 +115,9 @@ public class PolicyManager {
     }
 
     private static void fillPartition(Partition destPartition, Partition srcPartition) {
+    	if(null == srcPartition.getProvider())
+    		throw new RuntimeException("Provider is not set for the deployed partition.");
+    	
     	if(log.isDebugEnabled())
     		log.debug("Settting provider for Partition " + destPartition.getId() + " provider "+ srcPartition.getProvider());
         destPartition.setProvider(srcPartition.getProvider());