Display correct response message when removing a non existing user

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

Branch: refs/heads/master
Commit: 9f6a5afacc6516b2cace0532b00f7aa16dad3432
Parents: fd4a798
Author: Dinithi <[email protected]>
Authored: Tue May 19 20:49:08 2015 +0530
Committer: Dinithi <[email protected]>
Committed: Tue May 19 20:49:08 2015 +0530

----------------------------------------------------------------------
 .../org/apache/stratos/cli/RestCommandLineService.java | 13 ++-----------
 .../stratos/rest/endpoint/api/StratosApiV41.java       | 13 +++++++++----
 .../stratos/rest/endpoint/api/StratosApiV41Utils.java  |  2 +-
 3 files changed, 12 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/9f6a5afa/components/org.apache.stratos.cli/src/main/java/org/apache/stratos/cli/RestCommandLineService.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cli/src/main/java/org/apache/stratos/cli/RestCommandLineService.java
 
b/components/org.apache.stratos.cli/src/main/java/org/apache/stratos/cli/RestCommandLineService.java
index efc06d3..01bc45d 100644
--- 
a/components/org.apache.stratos.cli/src/main/java/org/apache/stratos/cli/RestCommandLineService.java
+++ 
b/components/org.apache.stratos.cli/src/main/java/org/apache/stratos/cli/RestCommandLineService.java
@@ -793,19 +793,10 @@ public class RestCommandLineService {
             HttpResponse response = restClient.doDelete(httpClient, 
restClient.getBaseURL()
                     + ENDPOINT_ADD_USER + "/" + userName);
 
-            String responseCode = "" + 
response.getStatusLine().getStatusCode();
-
+            String resultString = CliUtils.getHttpResponseString(response);
             GsonBuilder gsonBuilder = new GsonBuilder();
             Gson gson = gsonBuilder.create();
-
-            if (responseCode.equals(CliConstants.RESPONSE_NO_CONTENT) || 
responseCode.equals(CliConstants.RESPONSE_OK)) {
-                System.out.println("You have successfully deleted user:" + 
userName);
-            } else {
-                String resultString = CliUtils.getHttpResponseString(response);
-                ExceptionMapper exception = gson.fromJson(resultString, 
ExceptionMapper.class);
-                System.out.println(exception);
-            }
-
+            System.out.println(gson.fromJson(resultString, 
ResponseMessageBean.class).getMessage());
         } catch (Exception e) {
             String message = "Could not delete user: " + userName;
             printError(message, e);

http://git-wip-us.apache.org/repos/asf/stratos/blob/9f6a5afa/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 6188995..ed46f17 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
@@ -1736,11 +1736,16 @@ public class StratosApiV41 extends AbstractApi {
     @AuthorizationAction("/permission/admin/manage/removeUser")
     public Response removeUser(
             @PathParam("userName") String userName) throws RestAPIException {
+        try {
+            StratosApiV41Utils.removeUser(userName);
+            log.info("Successfully removed user: [username] " + userName);
+            return Response.ok().entity(new 
ResponseMessageBean(ResponseMessageBean.SUCCESS,
+                    String.format("User deleted successfully: [user] %s", 
userName))).build();
+        } catch (RestAPIException e) {
+            return Response.status(Response.Status.BAD_REQUEST).entity(new 
ResponseMessageBean(
+                    ResponseMessageBean.ERROR, e.getMessage())).build();
+        }
 
-        StratosApiV41Utils.removeUser(userName);
-        log.info("Successfully removed user: [username] " + userName);
-        return Response.ok().entity(new 
ResponseMessageBean(ResponseMessageBean.SUCCESS,
-                String.format("User deleted successfully: [user] %s", 
userName))).build();
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/stratos/blob/9f6a5afa/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 8304f98..d89ea35 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
@@ -3295,7 +3295,7 @@ public class StratosApiV41Utils {
         } catch (UserManagerException e) {
             String msg = "Error in removing user :" + userName;
             log.error(msg, e);
-            throw new RestAPIException(msg, e);
+            throw new RestAPIException(e.getMessage());
         }
     }
 

Reply via email to