From 27f01783f29317c8ee421bcb95c883f85f21dd78 Mon Sep 17 00:00:00 2001 From: Pubudu Gunatilaka Date: Tue, 26 May 2015 15:37:46 +0530 Subject: [PATCH 1/3] Fixed removing network patitions in use --- .../rest/endpoint/api/StratosApiV41Utils.java | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) 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 dbcf072d8e..7e17d21225 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 @@ -2616,9 +2616,30 @@ public static NetworkPartitionBean[] getNetworkPartitions() throws RestAPIExcept public static void removeNetworkPartition(String networkPartitionId) throws RestAPIException, CloudControllerServiceNetworkPartitionNotExistsExceptionException { try { + ApplicationContext[] applicationContexts = AutoscalerServiceClient.getInstance().getApplications(); + if (applicationContexts != null) { + for (ApplicationContext applicationContext : applicationContexts) { + if (applicationContext != null) { + String[] networkPartitions = AutoscalerServiceClient.getInstance().getApplicationNetworkPartitions(applicationContext.getApplicationId()); + if (networkPartitions != null) { + for (int i = 0; i < networkPartitions.length; i++) { + if (networkPartitions[i].equals(networkPartitionId)) { + String message = String.format("Cannot remove the network partition %s, since it is used in application %s", networkPartitionId, applicationContext.getApplicationId()); + log.error(message); + throw new RestAPIException(message); + } + } + } + } + } + } CloudControllerServiceClient serviceClient = CloudControllerServiceClient.getInstance(); serviceClient.removeNetworkPartition(networkPartitionId); - } catch (RemoteException e) { + } catch (AutoscalerServiceAutoScalerExceptionException e) { + String message = e.getMessage(); + log.error(message); + throw new RestAPIException(message, e); + } catch (RemoteException e) { String message = e.getMessage(); log.error(message); throw new RestAPIException(message, e); From 19776241f1d8f64e7a5589f6882e9018aeae0880 Mon Sep 17 00:00:00 2001 From: Pubudu Gunatilaka Date: Tue, 26 May 2015 15:42:00 +0530 Subject: [PATCH 2/3] formating changes fixed --- .../rest/endpoint/api/StratosApiV41Utils.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) 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 7e17d21225..c177501b1d 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 @@ -2618,20 +2618,20 @@ public static void removeNetworkPartition(String networkPartitionId) throws Rest try { ApplicationContext[] applicationContexts = AutoscalerServiceClient.getInstance().getApplications(); if (applicationContexts != null) { - for (ApplicationContext applicationContext : applicationContexts) { - if (applicationContext != null) { - String[] networkPartitions = AutoscalerServiceClient.getInstance().getApplicationNetworkPartitions(applicationContext.getApplicationId()); - if (networkPartitions != null) { - for (int i = 0; i < networkPartitions.length; i++) { - if (networkPartitions[i].equals(networkPartitionId)) { + for (ApplicationContext applicationContext : applicationContexts) { + if (applicationContext != null) { + String[] networkPartitions = AutoscalerServiceClient.getInstance().getApplicationNetworkPartitions(applicationContext.getApplicationId()); + if (networkPartitions != null) { + for (int i = 0; i < networkPartitions.length; i++) { + if (networkPartitions[i].equals(networkPartitionId)) { String message = String.format("Cannot remove the network partition %s, since it is used in application %s", networkPartitionId, applicationContext.getApplicationId()); log.error(message); - throw new RestAPIException(message); - } - } - } - } - } + throw new RestAPIException(message); + } + } + } + } + } } CloudControllerServiceClient serviceClient = CloudControllerServiceClient.getInstance(); serviceClient.removeNetworkPartition(networkPartitionId); @@ -2639,7 +2639,7 @@ public static void removeNetworkPartition(String networkPartitionId) throws Rest String message = e.getMessage(); log.error(message); throw new RestAPIException(message, e); - } catch (RemoteException e) { + } catch (RemoteException e) { String message = e.getMessage(); log.error(message); throw new RestAPIException(message, e); From 3426d775f87900e4e8da7834106d45067a8efbd2 Mon Sep 17 00:00:00 2001 From: Pubudu Gunatilaka Date: Tue, 26 May 2015 15:44:17 +0530 Subject: [PATCH 3/3] minor formating issues fixed --- .../stratos/rest/endpoint/api/StratosApiV41Utils.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) 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 c177501b1d..99f57a7994 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 @@ -2620,11 +2620,14 @@ public static void removeNetworkPartition(String networkPartitionId) throws Rest if (applicationContexts != null) { for (ApplicationContext applicationContext : applicationContexts) { if (applicationContext != null) { - String[] networkPartitions = AutoscalerServiceClient.getInstance().getApplicationNetworkPartitions(applicationContext.getApplicationId()); + String[] networkPartitions = AutoscalerServiceClient.getInstance(). + getApplicationNetworkPartitions(applicationContext.getApplicationId()); if (networkPartitions != null) { for (int i = 0; i < networkPartitions.length; i++) { if (networkPartitions[i].equals(networkPartitionId)) { - String message = String.format("Cannot remove the network partition %s, since it is used in application %s", networkPartitionId, applicationContext.getApplicationId()); + String message = String.format("Cannot remove the network partition %s, since" + + " it is used in application %s", networkPartitionId, + applicationContext.getApplicationId()); log.error(message); throw new RestAPIException(message); }