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 <[email protected]>
Authored: Fri Dec 13 23:50:45 2013 -0500
Committer: Udara Liyanage <[email protected]>
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());

Reply via email to