Repository: stratos
Updated Branches:
  refs/heads/tenant-isolation dd6aedea3 -> 0f6b228bc


Fixing minor issues in artifact addition and updation


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

Branch: refs/heads/tenant-isolation
Commit: f1c3b32477705d90f76c0d077bd8bc55823c6236
Parents: 7dc7336
Author: Dinithi <[email protected]>
Authored: Tue Aug 11 18:00:16 2015 +0530
Committer: Dinithi <[email protected]>
Committed: Tue Aug 11 18:00:16 2015 +0530

----------------------------------------------------------------------
 .../stratos/autoscaler/util/AutoscalerUtil.java     |  4 ++--
 .../stratos/rest/endpoint/api/StratosApiV41.java    | 15 ++++++++++++++-
 .../rest/endpoint/api/StratosApiV41Utils.java       | 16 ++++++++++++++++
 3 files changed, 32 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/f1c3b324/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
index 26ca7fb..85a4acc 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
@@ -639,7 +639,7 @@ public class AutoscalerUtil {
         }
 
         // application policy should contain at least one network partition 
reference
-        String[] networkPartitionIds = 
applicationPolicy.getNetworkPartitionsUuid();
+        String[] networkPartitionIds = 
applicationPolicy.getNetworkPartitions();
         if (null == networkPartitionIds || networkPartitionIds.length == 0) {
             String msg = "Invalid Application Policy: "
                     + "Application Policy is not containing any network 
partition reference";
@@ -663,7 +663,7 @@ public class AutoscalerUtil {
             NetworkPartition networkPartitionForTenant = null;
             if (networkPartitions != null) {
                 for (NetworkPartition networkPartition : networkPartitions) {
-                    if (applicationPolicy.getTenantId() == 
networkPartition.getTenantId() && networkPartition.getUuid()
+                    if (applicationPolicy.getTenantId() == 
networkPartition.getTenantId() && networkPartition.getId()
                             .equals(networkPartitionId)) {
                         networkPartitionForTenant = networkPartition;
                     }

http://git-wip-us.apache.org/repos/asf/stratos/blob/f1c3b324/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
index 7ca3070..8aefcea 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
@@ -498,6 +498,18 @@ public class StratosApiV41 extends AbstractApi {
         PrivilegedCarbonContext carbonContext = 
PrivilegedCarbonContext.getThreadLocalCarbonContext();
         String cartrideGroupUuid= UUID.randomUUID().toString();
         int tenantId = carbonContext.getTenantId();
+
+        CartridgeGroupBean groupBean = null;
+        groupBean = 
StratosApiV41Utils.getServiceGroupDefinition(cartridgeGroupBean.getName(), 
carbonContext.getTenantId());
+
+        if (groupBean != null) {
+            String msg = String.format("Cartridge already exists: 
[cartridge-type] %s [cartridge-uuid] %s [tenant-id] %d",
+                    cartridgeGroupBean.getName(), cartrideGroupUuid, tenantId);
+            log.warn(msg);
+            return Response.status(Response.Status.CONFLICT)
+                    .entity(new ResponseMessageBean(ResponseMessageBean.ERROR, 
msg)).build();
+        }
+
         try {
             StratosApiV41Utils.addCartridgeGroup(cartridgeGroupBean, 
cartrideGroupUuid, tenantId);
             URI url = 
uriInfo.getAbsolutePathBuilder().path(cartridgeGroupBean.getName()).build();
@@ -573,7 +585,8 @@ public class StratosApiV41 extends AbstractApi {
             @PathParam("name") String name) throws RestAPIException {
 
         PrivilegedCarbonContext carbonContext = 
PrivilegedCarbonContext.getThreadLocalCarbonContext();
-        CartridgeGroupBean serviceGroupDefinition = 
StratosApiV41Utils.getServiceGroupDefinition(name,carbonContext.getTenantId());
+        CartridgeGroupBean serviceGroupDefinition = 
StratosApiV41Utils.getServiceGroupDefinition(name,
+                carbonContext.getTenantId());
 
         if (serviceGroupDefinition != null) {
             return Response.ok().entity(serviceGroupDefinition).build();

http://git-wip-us.apache.org/repos/asf/stratos/blob/f1c3b324/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
index 5c9ab69..36dc04e 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
@@ -2981,6 +2981,14 @@ public class StratosApiV41Utils {
                     .getNetworkPartitions()) {
                 NetworkPartition networkPartition = 
CloudControllerServiceClient.getInstance()
                         
.getNetworkPartitionByTenant(networkPartitionReferenceBean.getId(), tenantId);
+
+                if (networkPartition == null) {
+                    String message = String.format("Network partition not 
found: for [deployment-policy-id] %s" +
+                            "[network-partition-id] %s" , 
deploymentPolicyDefinitionBean.getId(),
+                            networkPartitionReferenceBean.getId());
+                    throw new RestAPIException(message);
+                }
+
                 for (NetworkPartitionBean networkPartitionBean : 
networkPartitions) {
                     if (networkPartition.getTenantId() == tenantId && 
networkPartitionBean.getId().equals
                             (networkPartitionReferenceBean.getId())) {
@@ -3080,6 +3088,14 @@ public class StratosApiV41Utils {
                     .getNetworkPartitions()) {
                 NetworkPartition networkPartition = 
CloudControllerServiceClient.getInstance()
                         
.getNetworkPartitionByTenant(networkPartitionReferenceBean.getId(), tenantId);
+
+                if (networkPartition == null) {
+                    String message = String.format("Network partition not 
found: for [deployment-policy-id] %s" +
+                                    "[network-partition-id] %s" , 
deploymentPolicyDefinitionBean.getId(),
+                            networkPartitionReferenceBean.getId());
+                    throw new RestAPIException(message);
+                }
+
                 for (NetworkPartitionBean networkPartitionBean : 
networkPartitions) {
                     if (networkPartition.getTenantId() == tenantId && 
networkPartitionBean.getId().equals
                             (networkPartitionReferenceBean.getId())) {

Reply via email to