You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by ma...@apache.org on 2015/10/29 13:28:17 UTC

[1/3] syncope git commit: message refactoring, SYNCOPE-158

Repository: syncope
Updated Branches:
  refs/heads/master e486aaf3a -> 6d368c8b2


http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListRunningJobs.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListRunningJobs.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListRunningJobs.java
new file mode 100644
index 0000000..931cfef
--- /dev/null
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListRunningJobs.java
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.client.cli.commands.task;
+
+import org.apache.syncope.client.cli.Input;
+import org.apache.syncope.common.lib.SyncopeClientException;
+
+public class TaskListRunningJobs extends AbstractTaskCommand {
+
+    private static final String READ_HELP_MESSAGE = "task --list-running-jobs";
+
+    private final Input input;
+
+    public TaskListRunningJobs(final Input input) {
+        this.input = input;
+    }
+
+    public void list() {
+        if (input.parameterNumber() == 0) {
+            try {
+                taskResultManager.printTaskExecTO(taskSyncopeOperations.listRunningJobs());
+            } catch (final SyncopeClientException ex) {
+                taskResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            taskResultManager.unnecessaryParameters(input.listParameters(), READ_HELP_MESSAGE);
+        }
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListScheduledJobs.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListScheduledJobs.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListScheduledJobs.java
new file mode 100644
index 0000000..ec2cab1
--- /dev/null
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskListScheduledJobs.java
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.client.cli.commands.task;
+
+import org.apache.syncope.client.cli.Input;
+import org.apache.syncope.common.lib.SyncopeClientException;
+
+public class TaskListScheduledJobs extends AbstractTaskCommand {
+
+    private static final String READ_HELP_MESSAGE = "task --list-scheduled-jobs";
+
+    private final Input input;
+
+    public TaskListScheduledJobs(final Input input) {
+        this.input = input;
+    }
+
+    public void list() {
+        if (input.parameterNumber() == 0) {
+            try {
+                taskResultManager.printTaskExecTO(taskSyncopeOperations.listScheduledJobs());
+            } catch (final SyncopeClientException ex) {
+                taskResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            taskResultManager.unnecessaryParameters(input.listParameters(), READ_HELP_MESSAGE);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRead.java
index 9e93d9e..7b9b5d5 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRead.java
@@ -46,7 +46,7 @@ public class TaskRead extends AbstractTaskCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         taskResultManager.notFoundError("Task", parameter);
                     } else {
-                        taskResultManager.generic("Error: " + ex.getMessage());
+                        taskResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
@@ -56,5 +56,4 @@ public class TaskRead extends AbstractTaskCommand {
             taskResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRunningJobs.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRunningJobs.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRunningJobs.java
deleted file mode 100644
index d3a7e93..0000000
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskRunningJobs.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.syncope.client.cli.commands.task;
-
-import org.apache.syncope.common.lib.SyncopeClientException;
-
-public class TaskRunningJobs extends AbstractTaskCommand {
-
-    public void list() {
-        try {
-            taskResultManager.printTaskExecTO(taskSyncopeOperations.listRunningJobs());
-        } catch (final SyncopeClientException ex) {
-            taskResultManager.generic(ex.getMessage());
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskScheduledJobs.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskScheduledJobs.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskScheduledJobs.java
deleted file mode 100644
index c4798d5..0000000
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskScheduledJobs.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.syncope.client.cli.commands.task;
-
-import org.apache.syncope.common.lib.SyncopeClientException;
-
-public class TaskScheduledJobs extends AbstractTaskCommand {
-
-    public void list() {
-        try {
-            taskResultManager.printTaskExecTO(taskSyncopeOperations.listScheduledJobs());
-        } catch (final SyncopeClientException ex) {
-            taskResultManager.generic(ex.getMessage());
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCommand.java
index 35c3941..f34d1d0 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCommand.java
@@ -59,7 +59,7 @@ public class UserCommand extends AbstractCommand {
                 new UserCount(input).count();
                 break;
             case LIST:
-                new UserList().list();
+                new UserList(input).list();
                 break;
             case GET_BY_KEY:
                 new UserGetKey(input).get();
@@ -140,5 +140,4 @@ public class UserCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCount.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCount.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCount.java
index a9cff9e..7316768 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCount.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserCount.java
@@ -23,6 +23,8 @@ import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class UserCount extends AbstractUserCommand {
 
+    private static final String COUNT_HELP_MESSAGE = "user --count";
+
     private final Input input;
 
     public UserCount(final Input input) {
@@ -32,12 +34,12 @@ public class UserCount extends AbstractUserCommand {
     public void count() {
         if (input.parameterNumber() == 0) {
             try {
-                userResultManager.generic("Total users: " + userSyncopeOperations.count());
+                userResultManager.genericMessage("Total users: " + userSyncopeOperations.count());
             } catch (final SyncopeClientException ex) {
-                userResultManager.generic("Error: " + ex.getMessage());
+                userResultManager.genericError(ex.getMessage());
             }
         } else {
-            userResultManager.generic("Error: unnecessary parameters " + input.listParameters());
+            userResultManager.unnecessaryParameters(input.listParameters(), COUNT_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserDelete.java
index 817db6c..80195f8 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserDelete.java
@@ -42,7 +42,7 @@ public class UserDelete extends AbstractUserCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         userResultManager.notFoundError("User", parameter);
                     } else {
-                        userResultManager.generic(ex.getMessage());
+                        userResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     userResultManager.numberFormatException("user", parameter);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetKey.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetKey.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetKey.java
index d64a327..d11c9c8 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetKey.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetKey.java
@@ -34,9 +34,9 @@ public class UserGetKey extends AbstractUserCommand {
     public void get() {
         if (input.getParameters().length == 1) {
             try {
-                userResultManager.generic(userSyncopeOperations.getIdFromUsername(input.firstParameter()));
+                userResultManager.genericMessage(userSyncopeOperations.getIdFromUsername(input.firstParameter()));
             } catch (final SyncopeClientException ex) {
-                userResultManager.generic("Error: " + ex.getMessage());
+                userResultManager.genericError(ex.getMessage());
             }
         } else {
             userResultManager.commandOptionError(GET_HELP_MESSAGE);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetUsername.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetUsername.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetUsername.java
index a94b1df..6686663 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetUsername.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserGetUsername.java
@@ -34,9 +34,9 @@ public class UserGetUsername extends AbstractUserCommand {
     public void get() {
         if (input.getParameters().length == 1) {
             try {
-                userResultManager.generic(userSyncopeOperations.getUsernameFromId(input.firstParameter()));
+                userResultManager.genericMessage(userSyncopeOperations.getUsernameFromId(input.firstParameter()));
             } catch (final SyncopeClientException ex) {
-                userResultManager.generic("Error: " + ex.getMessage());
+                userResultManager.genericError(ex.getMessage());
             }
         } else {
             userResultManager.commandOptionError(GET_HELP_MESSAGE);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserList.java
index 4778cd2..94dad59 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserList.java
@@ -20,29 +20,42 @@ package org.apache.syncope.client.cli.commands.user;
 
 import java.util.LinkedList;
 import java.util.Scanner;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.PagedResult;
 import org.apache.syncope.common.lib.to.UserTO;
 
 public class UserList extends AbstractUserCommand {
 
+    private static final String LIST_HELP_MESSAGE = "user --list";
+
+    private final Input input;
+
+    public UserList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            final Scanner scanIn = new Scanner(System.in);
-            System.out.println(
-                    "This operation could be print a lot of information "
-                    + "on your screen. Do you want to continue? [yes/no]");
-            final String answer = scanIn.nextLine();
-            if ("yes".equalsIgnoreCase(answer)) {
-                final PagedResult<UserTO> uResult = userSyncopeOperations.list();
-                userResultManager.toView(new LinkedList<>(uResult.getResult()));
-            } else if ("no".equalsIgnoreCase(answer)) {
-                userResultManager.generic("List operation skipped");
-            } else {
-                userResultManager.generic("Invalid parameter, please use [yes/no]");
+        if (input.parameterNumber() == 0) {
+            try {
+                final Scanner scanIn = new Scanner(System.in);
+                System.out.println(
+                        "This operation could be print a lot of information "
+                        + "on your screen. Do you want to continue? [yes/no]");
+                final String answer = scanIn.nextLine();
+                if ("yes".equalsIgnoreCase(answer)) {
+                    final PagedResult<UserTO> uResult = userSyncopeOperations.list();
+                    userResultManager.toView(new LinkedList<>(uResult.getResult()));
+                } else if ("no".equalsIgnoreCase(answer)) {
+                    userResultManager.genericError("List operation skipped");
+                } else {
+                    userResultManager.genericError("Invalid parameter, please use [yes/no]");
+                }
+            } catch (final SyncopeClientException ex) {
+                userResultManager.genericError(ex.getMessage());
             }
-        } catch (final SyncopeClientException ex) {
-            userResultManager.generic(ex.getMessage());
+        } else {
+            userResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserRead.java
index 8fd9144..39dcb23 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserRead.java
@@ -45,7 +45,7 @@ public class UserRead extends AbstractUserCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         userResultManager.notFoundError("User", parameter);
                     } else {
-                        userResultManager.generic("Error: " + ex.getMessage());
+                        userResultManager.genericError(ex.getMessage());
                     }
                     break;
                 } catch (final NumberFormatException ex) {
@@ -57,5 +57,4 @@ public class UserRead extends AbstractUserCommand {
             userResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserResultManager.java
index 2ea0578..900d32c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserResultManager.java
@@ -32,7 +32,6 @@ public class UserResultManager extends CommonsResultManager {
         for (final UserTO userTO : userTOs) {
             printUser(userTO);
         }
-        System.out.println("");
     }
 
     private void printUser(final UserTO userTO) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByAttribute.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByAttribute.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByAttribute.java
index 18ac77e..a00812f 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByAttribute.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByAttribute.java
@@ -43,12 +43,13 @@ public class UserSearchByAttribute extends AbstractUserCommand {
             try {
                 List<UserTO> userTOs;
                 if (!realmSyncopeOperations.exists(realm)) {
-                    userResultManager.generic("Operation performed on root realm because " + realm + "does not exists");
+                    userResultManager.genericMessage("Operation performed on root realm because " + realm
+                            + "does not exists");
                 }
                 userTOs = userSyncopeOperations.searchByAttribute(
                         realm, pairParameter.getKey(), pairParameter.getValue());
                 if (userTOs == null || userTOs.isEmpty()) {
-                    userResultManager.generic("No users found with attribute "
+                    userResultManager.genericMessage("No users found with attribute "
                             + pairParameter.getKey() + " and value " + pairParameter.getValue());
                 } else {
                     userResultManager.toView(userTOs);
@@ -57,13 +58,13 @@ public class UserSearchByAttribute extends AbstractUserCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     userResultManager.notFoundError("User with " + pairParameter.getKey(), pairParameter.getValue());
                 } else {
-                    userResultManager.generic(ex.getMessage(), SEARCH_HELP_MESSAGE);
+                    userResultManager.genericError(ex.getMessage());
                 }
             } catch (final IllegalArgumentException ex) {
-                userResultManager.generic(ex.getMessage(), SEARCH_HELP_MESSAGE);
+                userResultManager.genericError(ex.getMessage());
+                userResultManager.genericError(SEARCH_HELP_MESSAGE);
             }
             userResultManager.commandOptionError(SEARCH_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByResource.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByResource.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByResource.java
index 6a22150..5d6177c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByResource.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByResource.java
@@ -45,7 +45,8 @@ public class UserSearchByResource extends AbstractUserCommand {
             try {
                 List<UserTO> userTOs = null;
                 if (!realmSyncopeOperations.exists(realm)) {
-                    userResultManager.generic("Operation performed on root realm because " + realm + "does not exists");
+                    userResultManager.genericMessage("Operation performed on root realm because " + realm
+                            + "does not exists");
                 }
                 if (!resourceSyncopeOperations.exists(resource)) {
                     userResultManager.notFoundError("Resource", resource);
@@ -53,16 +54,16 @@ public class UserSearchByResource extends AbstractUserCommand {
                     userTOs = userSyncopeOperations.searchByResource(realm, resource);
                 }
                 if (userTOs == null || userTOs.isEmpty()) {
-                    userResultManager.generic("No users has " + resource + " assigned");
+                    userResultManager.genericMessage("No users has " + resource + " assigned");
                 } else {
                     userResultManager.toView(userTOs);
                 }
             } catch (final WebServiceException | SyncopeClientException ex) {
-                userResultManager.generic(ex.getMessage(), SEARCH_HELP_MESSAGE);
+                userResultManager.genericError(ex.getMessage());
+                userResultManager.genericError(SEARCH_HELP_MESSAGE);
             }
         } else {
             userResultManager.commandOptionError(SEARCH_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByRole.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByRole.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByRole.java
index 789bacb..6e041fe 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByRole.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/user/UserSearchByRole.java
@@ -43,20 +43,21 @@ public class UserSearchByRole extends AbstractUserCommand {
             try {
                 List<UserTO> userTOs;
                 if (!realmSyncopeOperations.exists(realm)) {
-                    userResultManager.generic("Operation performed on root realm because " + realm + "does not exists");
+                    userResultManager.genericMessage("Operation performed on root realm because "
+                            + realm + "does not exists");
                 }
                 userTOs = userSyncopeOperations.searchByRole(realm, input.secondParameter());
                 if (userTOs == null || userTOs.isEmpty()) {
-                    userResultManager.generic("No users has " + role + " assigned");
+                    userResultManager.genericMessage("No users has " + role + " assigned");
                 } else {
                     userResultManager.toView(userTOs);
                 }
             } catch (final WebServiceException | SyncopeClientException ex) {
-                userResultManager.generic(ex.getMessage(), SEARCH_HELP_MESSAGE);
+                userResultManager.genericError(ex.getMessage());
+                userResultManager.genericError(SEARCH_HELP_MESSAGE);
             }
         } else {
             userResultManager.commandOptionError(SEARCH_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/util/CommandUtils.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/util/CommandUtils.java b/client/cli/src/main/java/org/apache/syncope/client/cli/util/CommandUtils.java
index b759877..c1c2182 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/util/CommandUtils.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/util/CommandUtils.java
@@ -88,5 +88,4 @@ public final class CommandUtils {
     private CommandUtils() {
 
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/util/FileSystemUtils.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/util/FileSystemUtils.java b/client/cli/src/main/java/org/apache/syncope/client/cli/util/FileSystemUtils.java
index 355e69c..aed3bd5 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/util/FileSystemUtils.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/util/FileSystemUtils.java
@@ -41,8 +41,13 @@ public final class FileSystemUtils {
         final File installationDirectory = new File(path);
         return installationDirectory.canWrite();
     }
-    
+
+    public static boolean exists(final String path) {
+        final File installationDirectory = new File(path);
+        return installationDirectory.exists();
+    }
+
     private FileSystemUtils() {
-        
+
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/util/JasyptUtils.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/util/JasyptUtils.java b/client/cli/src/main/java/org/apache/syncope/client/cli/util/JasyptUtils.java
index 4e4551c..c0af3b0 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/util/JasyptUtils.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/util/JasyptUtils.java
@@ -45,5 +45,4 @@ public final class JasyptUtils {
     public String decrypt(final String encryptedString) {
         return textEncryptor.decrypt(encryptedString);
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/view/Messages.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/view/Messages.java b/client/cli/src/main/java/org/apache/syncope/client/cli/view/Messages.java
index 4489b9b..c062524 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/view/Messages.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/view/Messages.java
@@ -18,6 +18,8 @@
  */
 package org.apache.syncope.client.cli.view;
 
+import java.util.List;
+
 public final class Messages {
 
     private static final String OPTION_COMMAND_MESSAGE_TEMPLATE = "\n - Usage: %s\n";
@@ -87,7 +89,10 @@ public final class Messages {
     public static void printDefaultMessage(final String option, final String helpMessage) {
         printMessage(String.format(DEFAULT_MESSAGE_TEMPLATE, option, helpMessage));
     }
-
+    
+    public static void printUnnecessaryParameters(final List<String> parameters, final String helpMessage) {
+        printMessage("Unnecessary parameter: " + parameters, "Usage: " + helpMessage);
+    }
     private Messages() {
 
     }


[2/3] syncope git commit: message refactoring, SYNCOPE-158

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerList.java
index b64eef6..6a4bfec 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerList.java
@@ -19,18 +19,28 @@
 package org.apache.syncope.client.cli.commands.logger;
 
 import java.util.LinkedList;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class LoggerList extends AbstractLoggerCommand {
 
-    public LoggerList() {
+    private static final String LIST_HELP_MESSAGE = "logger --list";
+
+    private final Input input;
+
+    public LoggerList(final Input input) {
+        this.input = input;
     }
 
     public void list() {
-        try {
-            loggerResultManager.fromList(new LinkedList<>(loggerSyncopeOperations.list()));
-        } catch (final SyncopeClientException ex) {
-            loggerResultManager.generic("Error: " + ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                loggerResultManager.fromList(new LinkedList<>(loggerSyncopeOperations.list()));
+            } catch (final SyncopeClientException ex) {
+                loggerResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            loggerResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerRead.java
index 1192252..321e257 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerRead.java
@@ -45,7 +45,7 @@ public class LoggerRead extends AbstractLoggerCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         loggerResultManager.notFoundError("Logger", parameter);
                     } else {
-                        loggerResultManager.generic("Error: " + ex.getMessage());
+                        loggerResultManager.genericError(ex.getMessage());
                     }
                     failed = true;
                     break;

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerResultManager.java
index a693aff..d6f759c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerResultManager.java
@@ -57,5 +57,4 @@ public class LoggerResultManager extends CommonsResultManager {
         }
         tableBuilder.build().print();
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdate.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdate.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdate.java
index 9a45916..6f118e9 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdate.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdate.java
@@ -57,11 +57,13 @@ public class LoggerUpdate extends AbstractLoggerCommand {
                                 input.firstParameter(),
                                 CommandUtils.fromEnumToArray(LoggerLevel.class));
                     } else if ("Parameter syntax error!".equalsIgnoreCase(ex.getMessage())) {
-                        loggerResultManager.generic(ex.getMessage(), UPDATE_HELP_MESSAGE);
+                        loggerResultManager.genericError(ex.getMessage());
+                        loggerResultManager.genericError(UPDATE_HELP_MESSAGE);
                     } else if (ex.getMessage().startsWith("NotFound")) {
                         loggerResultManager.notFoundError("Logger", parameter);
                     } else {
-                        loggerResultManager.generic(ex.getMessage(), UPDATE_HELP_MESSAGE);
+                        loggerResultManager.genericError(ex.getMessage());
+                        loggerResultManager.genericError(UPDATE_HELP_MESSAGE);
                     }
                     failed = true;
                     break;

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdateAll.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdateAll.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdateAll.java
index 83c8b9a..981b2aa 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdateAll.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerUpdateAll.java
@@ -52,7 +52,8 @@ public class LoggerUpdateAll extends AbstractLoggerCommand {
                                 input.firstParameter(),
                                 CommandUtils.fromEnumToArray(LoggerLevel.class));
                     } else {
-                        loggerResultManager.generic(ex.getMessage(), UPDATE_ALL_HELP_MESSAGE);
+                        loggerResultManager.genericError(ex.getMessage());
+                        loggerResultManager.genericError(UPDATE_ALL_HELP_MESSAGE);
                     }
                     failed = true;
                     break;

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationCommand.java
index d5197ac..ee0f77c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationCommand.java
@@ -45,7 +45,7 @@ public class NotificationCommand extends AbstractCommand {
 
         switch (Options.fromName(input.getOption())) {
             case LIST:
-                new NotificationList().list();
+                new NotificationList(input).list();
                 break;
             case READ:
                 new NotificationRead(input).read();
@@ -105,5 +105,4 @@ public class NotificationCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationDelete.java
index 3b11a5a..4690d24 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationDelete.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.cli.commands.notification;
 
 import javax.xml.ws.WebServiceException;
 import org.apache.syncope.client.cli.Input;
-import org.apache.syncope.client.cli.view.Messages;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class NotificationDelete extends AbstractNotificationCommand {
@@ -43,7 +42,7 @@ public class NotificationDelete extends AbstractNotificationCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         notificationResultManager.notFoundError("Notification", parameter);
                     } else {
-                        Messages.printMessage(ex.getMessage());
+                        notificationResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     notificationResultManager.notBooleanDeletedError("notification", parameter);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationList.java
index 3df5d64..9341ae2 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationList.java
@@ -18,18 +18,31 @@
  */
 package org.apache.syncope.client.cli.commands.notification;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.NotificationTO;
 
 public class NotificationList extends AbstractNotificationCommand {
 
+    private static final String LIST_HELP_MESSAGE = "notification --list";
+
+    private final Input input;
+
+    public NotificationList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            for (final NotificationTO notificationTO : notificationSyncopeOperations.list()) {
-                System.out.println(notificationTO);
+        if (input.parameterNumber() == 0) {
+            try {
+                for (final NotificationTO notificationTO : notificationSyncopeOperations.list()) {
+                    System.out.println(notificationTO);
+                }
+            } catch (final SyncopeClientException ex) {
+                notificationResultManager.genericError(ex.getMessage());
             }
-        } catch (final SyncopeClientException ex) {
-            notificationResultManager.generic(ex.getMessage());
+        } else {
+            notificationResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationRead.java
index bd82663..d493fa5 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/notification/NotificationRead.java
@@ -43,7 +43,7 @@ public class NotificationRead extends AbstractNotificationCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         notificationResultManager.notFoundError("Notification", parameter);
                     } else {
-                        notificationResultManager.generic(ex.getMessage());
+                        notificationResultManager.genericError(ex.getMessage());
                     }
                 }
             }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyCommand.java
index 7c92d9d..f665113 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyCommand.java
@@ -107,5 +107,4 @@ public class PolicyCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyDelete.java
index 8f9ede3..5dde82b 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyDelete.java
@@ -39,13 +39,12 @@ public class PolicyDelete extends AbstractPolicyCommand {
                     policySyncopeOperations.delete(parameter);
                     policyResultManager.deletedMessage("Policy", parameter);
                 } catch (final WebServiceException | SyncopeClientException ex) {
-                    System.out.println("Error:");
                     if (ex.getMessage().startsWith("NotFound")) {
                         policyResultManager.notFoundError("Policy", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        policyResultManager.generic("You cannot delete policy " + parameter);
+                        policyResultManager.genericError("You cannot delete policy " + parameter);
                     } else {
-                        policyResultManager.generic(ex.getMessage());
+                        policyResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     policyResultManager.notBooleanDeletedError("policy", parameter);
@@ -55,5 +54,4 @@ public class PolicyDelete extends AbstractPolicyCommand {
             policyResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyList.java
index 4b672d6..d23fa11 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyList.java
@@ -47,7 +47,7 @@ public class PolicyList extends AbstractPolicyCommand {
                 }
                 policyResultManager.fromList(policyType, policyTOs);
             } catch (final SyncopeClientException ex) {
-                policyResultManager.generic(ex.getMessage());
+                policyResultManager.genericError(ex.getMessage());
             } catch (final IllegalArgumentException ex) {
                 policyResultManager.typeNotValidError(
                         "policy", input.firstParameter(), CommandUtils.fromEnumToArray(PolicyType.class));

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyRead.java
index 25c9306..0a466e0 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/policy/PolicyRead.java
@@ -40,17 +40,17 @@ public class PolicyRead extends AbstractPolicyCommand {
             for (final String parameter : input.getParameters()) {
                 try {
                     policyTOs.add(policySyncopeOperations.read(parameter));
-                    policyResultManager.fromRead(policyTOs);
                 } catch (final NumberFormatException ex) {
                     policyResultManager.notBooleanDeletedError("policy", parameter);
                 } catch (final WebServiceException | SyncopeClientException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         policyResultManager.notFoundError("Policy", parameter);
                     } else {
-                        policyResultManager.generic(ex.getMessage());
+                        policyResultManager.genericError(ex.getMessage());
                     }
                 }
             }
+            policyResultManager.fromRead(policyTOs);
         } else {
             policyResultManager.commandOptionError(READ_HELP_MESSAGE);
         }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionCommand.java
index 4d48b8d..0259e30 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionCommand.java
@@ -45,7 +45,7 @@ public class QuestionCommand extends AbstractCommand {
 
         switch (QuestionOptions.fromName(input.getOption())) {
             case LIST:
-                new QuestionList().list();
+                new QuestionList(input).list();
                 break;
             case READ:
                 new QuestionRead(input).read();
@@ -104,5 +104,4 @@ public class QuestionCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionDelete.java
index d57ae5c..29cff9d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionDelete.java
@@ -42,7 +42,7 @@ public class QuestionDelete extends AbstractQuestionCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         questionResultManager.notFoundError("Security question", parameter);
                     } else {
-                        questionResultManager.generic("Error: " + ex.getMessage());
+                        questionResultManager.genericError(ex.getMessage());
                     }
                     break;
                 } catch (final NumberFormatException ex) {
@@ -53,5 +53,4 @@ public class QuestionDelete extends AbstractQuestionCommand {
             questionResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionList.java
index 836554a..7d2e18d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionList.java
@@ -18,15 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.question;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class QuestionList extends AbstractQuestionCommand {
 
+    private static final String LIST_HELP_MESSAGE = "question --list";
+
+    private final Input input;
+
+    public QuestionList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            questionResultManager.toView(questionSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            questionResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                questionResultManager.toView(questionSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                questionResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            questionResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionRead.java
index 5f96cd5..306f449 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionRead.java
@@ -45,7 +45,7 @@ public class QuestionRead extends AbstractQuestionCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         questionResultManager.notFoundError("Security question", parameter);
                     } else {
-                        questionResultManager.generic("Error: " + ex.getMessage());
+                        questionResultManager.genericError(ex.getMessage());
                     }
                     break;
                 } catch (final NumberFormatException ex) {
@@ -57,5 +57,4 @@ public class QuestionRead extends AbstractQuestionCommand {
             questionResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionSyncopeOperations.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionSyncopeOperations.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionSyncopeOperations.java
index 238a576..8caced7 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionSyncopeOperations.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/question/QuestionSyncopeOperations.java
@@ -42,5 +42,4 @@ public class QuestionSyncopeOperations {
     public SecurityQuestionTO readByUser(final String username) {
         return securityQuestionService.readByUser(username);
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmCommand.java
index 6a32562..95b8ec4 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmCommand.java
@@ -40,7 +40,7 @@ public class RealmCommand extends AbstractCommand {
         }
         switch (Options.fromName(input.getOption())) {
             case LIST:
-                new RealmList().list();
+                new RealmList(input).list();
                 break;
             case HELP:
                 System.out.println(HELP_MESSAGE);
@@ -92,5 +92,4 @@ public class RealmCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmList.java
index 5d4b902..51b5fe4 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmList.java
@@ -18,19 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.realm;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class RealmList extends AbstractRealmCommand {
 
-    public RealmList() {
+    private static final String LIST_HELP_MESSAGE = "realm --list";
+
+    private final Input input;
+
+    public RealmList(final Input input) {
+        this.input = input;
     }
 
     public void list() {
-        try {
-            realmResultManager.toView(realmSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            realmResultManager.generic("Error: " + ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                realmResultManager.toView(realmSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                realmResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            realmResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmSyncopeOperations.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmSyncopeOperations.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmSyncopeOperations.java
index e9d0b65..19af12f 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmSyncopeOperations.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/realm/RealmSyncopeOperations.java
@@ -40,5 +40,4 @@ public class RealmSyncopeOperations {
         }
         return exists;
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportCommand.java
index 1d64bf1..ac67fcf 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportCommand.java
@@ -32,6 +32,7 @@ public class ReportCommand extends AbstractCommand {
             + "  Options:\n"
             + "    --help \n"
             + "    --list \n"
+            + "    --list-jobs \n"
             + "    --read \n"
             + "       Syntax: --read {REPORT-ID} {REPORT-ID} [...] \n"
             + "    --delete \n"
@@ -54,10 +55,10 @@ public class ReportCommand extends AbstractCommand {
 
         switch (Options.fromName(input.getOption())) {
             case LIST:
-                new ReportList().list();
+                new ReportList(input).list();
                 break;
             case LIST_JOBS:
-                new ReportListJobs().list();
+                new ReportListJobs(input).list();
                 break;
             case READ:
                 new ReportRead(input).read();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDelete.java
index aa2c5f8..52850bd 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDelete.java
@@ -42,9 +42,9 @@ public class ReportDelete extends AbstractReportCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         reportResultManager.notFoundError("Report", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        reportResultManager.generic("You cannot delete report " + parameter);
+                        reportResultManager.genericError("You cannot delete report " + parameter);
                     } else {
-                        reportResultManager.generic(ex.getMessage());
+                        reportResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     reportResultManager.numberFormatException("report", parameter);
@@ -54,5 +54,4 @@ public class ReportDelete extends AbstractReportCommand {
             reportResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDeleteExecution.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDeleteExecution.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDeleteExecution.java
index 86f31a2..3ae7bb7 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDeleteExecution.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportDeleteExecution.java
@@ -34,10 +34,8 @@ public class ReportDeleteExecution extends AbstractReportCommand {
     }
 
     public void delete() {
-
         if (input.parameterNumber() >= 1) {
             for (final String parameter : input.getParameters()) {
-
                 try {
                     reportSyncopeOperations.deleteExecution(parameter);
                     reportResultManager.deletedMessage("Report execution", parameter);
@@ -45,9 +43,9 @@ public class ReportDeleteExecution extends AbstractReportCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         reportResultManager.notFoundError("Report", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        reportResultManager.generic("You cannot delete report " + parameter);
+                        reportResultManager.genericError("You cannot delete report " + parameter);
                     } else {
-                        reportResultManager.generic(ex.getMessage());
+                        reportResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     reportResultManager.numberFormatException("report", parameter);
@@ -57,5 +55,4 @@ public class ReportDeleteExecution extends AbstractReportCommand {
             reportResultManager.commandOptionError(DELETE_EXECUTION_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExecute.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExecute.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExecute.java
index 0641203..f8a4f6d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExecute.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExecute.java
@@ -37,7 +37,6 @@ public class ReportExecute extends AbstractReportCommand {
 
     public void execute() {
         if (input.parameterNumber() == 1) {
-
             try {
                 reportSyncopeOperations.execute(input.firstParameter());
                 final List<ReportExecTO> executionList
@@ -48,9 +47,9 @@ public class ReportExecute extends AbstractReportCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     reportResultManager.notFoundError("Report", input.firstParameter());
                 } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                    reportResultManager.generic("You cannot delete report " + input.firstParameter());
+                    reportResultManager.genericError("You cannot delete report " + input.firstParameter());
                 } else {
-                    reportResultManager.generic(ex.getMessage());
+                    reportResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 reportResultManager.numberFormatException("report", input.firstParameter());
@@ -59,5 +58,4 @@ public class ReportExecute extends AbstractReportCommand {
             reportResultManager.commandOptionError(EXECUTE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExportExecution.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExportExecution.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExportExecution.java
index ae79e57..e7aca1e 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExportExecution.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportExportExecution.java
@@ -55,34 +55,35 @@ public class ReportExportExecution extends AbstractReportCommand {
                         case XML:
                             final String xmlFinalName = "export_" + parameter + ".xml";
                             XMLUtils.createXMLFile(report, xmlFinalName);
-                            reportResultManager.generic(xmlFinalName + " successfully created");
+                            reportResultManager.genericMessage(xmlFinalName + " successfully created");
                             break;
                         case CSV:
-                            reportResultManager.generic(format + " doesn't supported");
+                            reportResultManager.genericError(format + " doesn't supported");
                             break;
                         case PDF:
-                            reportResultManager.generic(format + " doesn't supported");
+                            reportResultManager.genericError(format + " doesn't supported");
                             break;
                         case HTML:
-                            reportResultManager.generic(format + " doesn't supported");
+                            reportResultManager.genericError(format + " doesn't supported");
                             break;
                         case RTF:
-                            reportResultManager.generic(format + " doesn't supported");
+                            reportResultManager.genericError(format + " doesn't supported");
                             break;
                         default:
-                            reportResultManager.generic(format + " doesn't supported");
+                            reportResultManager.genericError(format + " doesn't supported");
                             break;
                     }
                 } catch (final WebServiceException | SyncopeClientException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         reportResultManager.notFoundError("Report", parameter);
                     } else {
-                        reportResultManager.generic(ex.getMessage());
+                        reportResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     reportResultManager.numberFormatException("report", parameter);
                 } catch (IOException | ParserConfigurationException | SAXException | TransformerException e) {
-                    reportResultManager.generic(" - Error creating " + "export_" + parameter + " " + e.getMessage());
+                    reportResultManager.genericError(
+                            " - Error creating " + "export_" + parameter + " " + e.getMessage());
                 } catch (final IllegalArgumentException ex) {
                     reportResultManager.typeNotValidError(
                             "format", input.firstParameter(),
@@ -94,5 +95,4 @@ public class ReportExportExecution extends AbstractReportCommand {
             reportResultManager.commandOptionError(EXPORT_EXECUTION_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportList.java
index 7fca5c0..abeaf4e 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportList.java
@@ -18,16 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.report;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class ReportList extends AbstractReportCommand {
 
+    private static final String LIST_HELP_MESSAGE = "report --list";
+
+    private final Input input;
+
+    public ReportList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            reportResultManager.fromValueToView(reportSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            reportResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                reportResultManager.fromValueToView(reportSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                reportResultManager.genericMessage(ex.getMessage());
+            }
+        } else {
+            reportResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportListJobs.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportListJobs.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportListJobs.java
index 5b13cbf..2735f85 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportListJobs.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportListJobs.java
@@ -18,18 +18,31 @@
  */
 package org.apache.syncope.client.cli.commands.report;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.types.JobStatusType;
 
 public class ReportListJobs extends AbstractReportCommand {
 
+    private static final String LIST_HELP_MESSAGE = "report --list-jobs";
+
+    private final Input input;
+
+    public ReportListJobs(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            for (final JobStatusType jobStatusType : JobStatusType.values()) {
-                reportResultManager.printReportExecution(reportSyncopeOperations.listJobs(jobStatusType));
+        if (input.parameterNumber() == 0) {
+            try {
+                for (final JobStatusType jobStatusType : JobStatusType.values()) {
+                    reportResultManager.printReportExecution(reportSyncopeOperations.listJobs(jobStatusType));
+                }
+            } catch (final SyncopeClientException ex) {
+                reportResultManager.genericError(ex.getMessage());
             }
-        } catch (final SyncopeClientException ex) {
-            reportResultManager.generic(ex.getMessage());
+        } else {
+            reportResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportRead.java
index 9a1ebc8..acd5da0 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportRead.java
@@ -47,7 +47,7 @@ public class ReportRead extends AbstractReportCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         reportResultManager.notFoundError("Report", parameter);
                     } else {
-                        reportResultManager.generic(ex.getMessage());
+                        reportResultManager.genericError(ex.getMessage());
                     }
                 }
             }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportReadExecution.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportReadExecution.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportReadExecution.java
index 45d1c54..f7c9ec3 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportReadExecution.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/report/ReportReadExecution.java
@@ -43,11 +43,10 @@ public class ReportReadExecution extends AbstractReportCommand {
                 try {
                     reportExecTOs.add(reportSyncopeOperations.readExecution(parameter));
                 } catch (final WebServiceException | SyncopeClientException ex) {
-                    System.out.println("Error:");
                     if (ex.getMessage().startsWith("NotFound")) {
                         reportResultManager.notFoundError("Report", parameter);
                     } else {
-                        reportResultManager.generic(ex.getMessage());
+                        reportResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     reportResultManager.numberFormatException("report", parameter);
@@ -58,5 +57,4 @@ public class ReportReadExecution extends AbstractReportCommand {
             reportResultManager.commandOptionError(READ_EXECUTION_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceCommand.java
index 942fcd2..185cd99 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceCommand.java
@@ -45,7 +45,7 @@ public class ResourceCommand extends AbstractCommand {
 
         switch (ResourceOptions.fromName(input.getOption())) {
             case LIST:
-                new ResourceList().list();
+                new ResourceList(input).list();
                 break;
             case READ:
                 new ResourceRead(input).read();
@@ -105,5 +105,4 @@ public class ResourceCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceDelete.java
index 9068b7d..3b94ecb 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceDelete.java
@@ -43,7 +43,7 @@ public class ResourceDelete extends AbstractResourceCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         resourceResultManager.notFoundError("Resource", parameter);
                     } else {
-                        resourceResultManager.generic(ex.getMessage());
+                        resourceResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
@@ -52,5 +52,4 @@ public class ResourceDelete extends AbstractResourceCommand {
             resourceResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceList.java
index 27f0d74..8b09536 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceList.java
@@ -18,15 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.resource;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class ResourceList extends AbstractResourceCommand {
 
+    private static final String LIST_HELP_MESSAGE = "resource --list";
+
+    private final Input input;
+
+    public ResourceList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            resourceResultManager.toView(resourceSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            resourceResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                resourceResultManager.toView(resourceSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                resourceResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            resourceResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceRead.java
index 85cd669..8f8c874 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceRead.java
@@ -46,7 +46,7 @@ public class ResourceRead extends AbstractResourceCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         resourceResultManager.notFoundError("Resource", parameter);
                     } else {
-                        resourceResultManager.generic(ex.getMessage());
+                        resourceResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
@@ -56,5 +56,4 @@ public class ResourceRead extends AbstractResourceCommand {
             resourceResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceResultManager.java
index d598910..488f574 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/resource/ResourceResultManager.java
@@ -31,7 +31,6 @@ public class ResourceResultManager extends CommonsResultManager {
         for (final ResourceTO resourceTO : resourceTOs) {
             printResource(resourceTO);
         }
-        System.out.println("");
     }
 
     private void printResource(final ResourceTO resourceTO) {
@@ -90,5 +89,4 @@ public class ResourceResultManager extends CommonsResultManager {
             System.out.println("");
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleCommand.java
index bb2f988..63c9f09 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleCommand.java
@@ -45,7 +45,7 @@ public class RoleCommand extends AbstractCommand {
 
         switch (RoleOptions.fromName(input.getOption())) {
             case LIST:
-                new RoleList().list();
+                new RoleList(input).list();
                 break;
             case READ:
                 new RoleRead(input).read();
@@ -105,5 +105,4 @@ public class RoleCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleDelete.java
index e47a40e..4691312 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleDelete.java
@@ -42,7 +42,7 @@ public class RoleDelete extends AbstractRoleCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         roleResultManager.notFoundError("Role", parameter);
                     } else {
-                        roleResultManager.generic("Error: " + ex.getMessage());
+                        roleResultManager.genericError(ex.getMessage());
                     }
                     break;
                 } catch (final NumberFormatException ex) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleList.java
index e87b1c2..53f7105 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleList.java
@@ -18,15 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.role;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class RoleList extends AbstractRoleCommand {
 
+    private static final String LIST_HELP_MESSAGE = "role --list";
+
+    private final Input input;
+
+    public RoleList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            roleResultManager.toView(roleSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            roleResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                roleResultManager.toView(roleSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                roleResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            roleResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleRead.java
index 2a0393f..021b65c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleRead.java
@@ -45,7 +45,7 @@ public class RoleRead extends AbstractRoleCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         roleResultManager.notFoundError("Role", parameter);
                     } else {
-                        roleResultManager.generic("Error: " + ex.getMessage());
+                        roleResultManager.genericError(ex.getMessage());
                     }
                     break;
                 } catch (final NumberFormatException ex) {
@@ -57,5 +57,4 @@ public class RoleRead extends AbstractRoleCommand {
             roleResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleSyncopeOperations.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleSyncopeOperations.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleSyncopeOperations.java
index c24c3e9..11c207d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleSyncopeOperations.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/role/RoleSyncopeOperations.java
@@ -38,5 +38,4 @@ public class RoleSyncopeOperations {
     public void delete(final String roleId) {
         roleService.delete(Long.valueOf(roleId));
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaCommand.java
index 193c79b..c0d3976 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaCommand.java
@@ -51,16 +51,16 @@ public class SchemaCommand extends AbstractCommand {
                 new SchemaList(input).list();
                 break;
             case LIST_ALL:
-                new SchemaListAll().listAll();
+                new SchemaListAll(input).listAll();
                 break;
             case LIST_PLAIN:
-                new SchemaListPlain().listPlain();
+                new SchemaListPlain(input).listPlain();
                 break;
             case LIST_DERIVED:
-                new SchemaListDerived().listDerived();
+                new SchemaListDerived(input).listDerived();
                 break;
             case LIST_VIRTUAL:
-                new SchemaListVirtual().listVirtual();
+                new SchemaListVirtual(input).listVirtual();
                 break;
             case READ:
                 new SchemaRead(input).read();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaDelete.java
index 0850e2f..d3d5314 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaDelete.java
@@ -48,9 +48,9 @@ public class SchemaDelete extends AbstractSchemaCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     schemaResultManager.notFoundError("Schema", parameters[0]);
                 } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                    schemaResultManager.generic("You cannot delete schema " + parameters[0]);
+                    schemaResultManager.genericError("You cannot delete schema " + parameters[0]);
                 } else {
-                    schemaResultManager.generic(ex.getMessage());
+                    schemaResultManager.genericError(ex.getMessage());
                 }
             } catch (final IllegalArgumentException ex) {
                 schemaResultManager.typeNotValidError(
@@ -60,5 +60,4 @@ public class SchemaDelete extends AbstractSchemaCommand {
             schemaResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaList.java
index 404a487..cf41aa7 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaList.java
@@ -58,7 +58,7 @@ public class SchemaList extends AbstractSchemaCommand {
                         break;
                 }
             } catch (final SyncopeClientException ex) {
-                schemaResultManager.generic(ex.getMessage());
+                schemaResultManager.genericError(ex.getMessage());
             } catch (final IllegalArgumentException ex) {
                 schemaResultManager.typeNotValidError(
                         "schema", input.firstParameter(), CommandUtils.fromEnumToArray(SchemaType.class));

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListAll.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListAll.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListAll.java
index 57d95a1..2c17a3a 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListAll.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListAll.java
@@ -20,36 +20,48 @@ package org.apache.syncope.client.cli.commands.schema;
 
 import java.util.LinkedList;
 import javax.xml.ws.WebServiceException;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.AbstractSchemaTO;
 import org.apache.syncope.common.lib.types.SchemaType;
 
 public class SchemaListAll extends AbstractSchemaCommand {
 
+    private static final String LIST_HELP_MESSAGE = "schema --list-all";
+
+    private final Input input;
+
+    public SchemaListAll(final Input input) {
+        this.input = input;
+    }
+
     public void listAll() {
-        try {
-            for (final SchemaType schemaType : SchemaType.values()) {
-                final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
-                for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.list(schemaType)) {
-                    schemaTOs.add(schemaTO);
-                }
-                switch (schemaType) {
-                    case PLAIN:
-                        schemaResultManager.fromListPlain(schemaTOs);
-                        break;
-                    case DERIVED:
-                        schemaResultManager.fromListDerived(schemaTOs);
-                        break;
-                    case VIRTUAL:
-                        schemaResultManager.fromListVirtual(schemaTOs);
-                        break;
-                    default:
-                        break;
+        if (input.parameterNumber() == 0) {
+            try {
+                for (final SchemaType schemaType : SchemaType.values()) {
+                    final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
+                    for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.list(schemaType)) {
+                        schemaTOs.add(schemaTO);
+                    }
+                    switch (schemaType) {
+                        case PLAIN:
+                            schemaResultManager.fromListPlain(schemaTOs);
+                            break;
+                        case DERIVED:
+                            schemaResultManager.fromListDerived(schemaTOs);
+                            break;
+                        case VIRTUAL:
+                            schemaResultManager.fromListVirtual(schemaTOs);
+                            break;
+                        default:
+                            break;
+                    }
                 }
+            } catch (final SyncopeClientException | WebServiceException ex) {
+                schemaResultManager.genericError(ex.getMessage());
             }
-        } catch (final SyncopeClientException | WebServiceException ex) {
-            schemaResultManager.generic(ex.getMessage());
+        } else {
+            schemaResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListDerived.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListDerived.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListDerived.java
index ee90327..fa76684 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListDerived.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListDerived.java
@@ -20,20 +20,33 @@ package org.apache.syncope.client.cli.commands.schema;
 
 import java.util.LinkedList;
 import javax.xml.ws.WebServiceException;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.AbstractSchemaTO;
 
 public class SchemaListDerived extends AbstractSchemaCommand {
 
+    private static final String LIST_HELP_MESSAGE = "schema --list-derived";
+
+    private final Input input;
+
+    public SchemaListDerived(final Input input) {
+        this.input = input;
+    }
+
     public void listDerived() {
-        try {
-            final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
-            for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listDerived()) {
-                schemaTOs.add(schemaTO);
+        if (input.parameterNumber() == 0) {
+            try {
+                final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
+                for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listDerived()) {
+                    schemaTOs.add(schemaTO);
+                }
+                schemaResultManager.fromListDerived(schemaTOs);
+            } catch (final SyncopeClientException | WebServiceException ex) {
+                schemaResultManager.genericError(ex.getMessage());
             }
-            schemaResultManager.fromListDerived(schemaTOs);
-        } catch (final SyncopeClientException | WebServiceException ex) {
-            schemaResultManager.generic(ex.getMessage());
+        } else {
+            schemaResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListPlain.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListPlain.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListPlain.java
index 6fa9ad6..746b856 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListPlain.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListPlain.java
@@ -20,20 +20,33 @@ package org.apache.syncope.client.cli.commands.schema;
 
 import java.util.LinkedList;
 import javax.xml.ws.WebServiceException;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.AbstractSchemaTO;
 
 public class SchemaListPlain extends AbstractSchemaCommand {
 
+    private static final String LIST_HELP_MESSAGE = "schema --list-plain";
+
+    private final Input input;
+
+    public SchemaListPlain(final Input input) {
+        this.input = input;
+    }
+
     public void listPlain() {
-        try {
-            final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
-            for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listPlain()) {
-                schemaTOs.add(schemaTO);
+        if (input.parameterNumber() == 0) {
+            try {
+                final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
+                for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listPlain()) {
+                    schemaTOs.add(schemaTO);
+                }
+                schemaResultManager.fromListPlain(schemaTOs);
+            } catch (final SyncopeClientException | WebServiceException ex) {
+                schemaResultManager.genericError(ex.getMessage());
             }
-            schemaResultManager.fromListPlain(schemaTOs);
-        } catch (final SyncopeClientException | WebServiceException ex) {
-            schemaResultManager.generic(ex.getMessage());
+        } else {
+            schemaResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListVirtual.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListVirtual.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListVirtual.java
index 74b5b6c..d7da8c8 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListVirtual.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaListVirtual.java
@@ -20,20 +20,33 @@ package org.apache.syncope.client.cli.commands.schema;
 
 import java.util.LinkedList;
 import javax.xml.ws.WebServiceException;
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.to.AbstractSchemaTO;
 
 public class SchemaListVirtual extends AbstractSchemaCommand {
 
+    private static final String LIST_HELP_MESSAGE = "schema --list-virtual";
+
+    private final Input input;
+
+    public SchemaListVirtual(final Input input) {
+        this.input = input;
+    }
+
     public void listVirtual() {
-        try {
-            final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
-            for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listVirtual()) {
-                schemaTOs.add(schemaTO);
+        if (input.parameterNumber() == 0) {
+            try {
+                final LinkedList<AbstractSchemaTO> schemaTOs = new LinkedList<>();
+                for (final AbstractSchemaTO schemaTO : schemaSyncopeOperations.listVirtual()) {
+                    schemaTOs.add(schemaTO);
+                }
+                schemaResultManager.fromListVirtual(schemaTOs);
+            } catch (final SyncopeClientException | WebServiceException ex) {
+                schemaResultManager.genericError(ex.getMessage());
             }
-            schemaResultManager.fromListVirtual(schemaTOs);
-        } catch (final SyncopeClientException | WebServiceException ex) {
-            schemaResultManager.generic(ex.getMessage());
+        } else {
+            schemaResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaRead.java
index d84444d..133a14c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/schema/SchemaRead.java
@@ -64,7 +64,7 @@ public class SchemaRead extends AbstractSchemaCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     schemaResultManager.notFoundError("Schema", parameters[0]);
                 } else {
-                    schemaResultManager.generic(ex.getMessage());
+                    schemaResultManager.genericError(ex.getMessage());
                 }
             } catch (final IllegalArgumentException ex) {
                 schemaResultManager.typeNotValidError(
@@ -74,5 +74,4 @@ public class SchemaRead extends AbstractSchemaCommand {
             schemaResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowCommand.java
index c40dda9..dd5a3ff 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowCommand.java
@@ -100,5 +100,4 @@ public class WorkflowCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDefinition.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDefinition.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDefinition.java
index 89443da..aa1d8a3 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDefinition.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDefinition.java
@@ -43,7 +43,7 @@ public class WorkflowExportDefinition extends AbstractWorkflowCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     workflowResultManager.notFoundError("Workflow", input.firstParameter());
                 } else {
-                    workflowResultManager.generic(ex.getMessage());
+                    workflowResultManager.genericError(ex.getMessage());
                 }
             } catch (final IllegalArgumentException ex) {
                 workflowResultManager.typeNotValidError(

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDiagram.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDiagram.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDiagram.java
index f65bf2f..abc4c61 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDiagram.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowExportDiagram.java
@@ -48,18 +48,18 @@ public class WorkflowExportDiagram extends AbstractWorkflowCommand {
                 final FileOutputStream fos = new FileOutputStream("/tmp/diagram.png");
                 fos.write(diagram);
                 fos.close();
-                workflowResultManager.generic("Diagram created: /tmp/diagram.png");
+                workflowResultManager.genericMessage("Diagram created: /tmp/diagram.png");
             } catch (final SyncopeClientException | WebServiceException ex) {
                 if (ex.getMessage().startsWith("NotFound")) {
                     workflowResultManager.notFoundError("Workflow", input.firstParameter());
                 } else {
-                    workflowResultManager.generic(ex.getMessage());
+                    workflowResultManager.genericError(ex.getMessage());
                 }
             } catch (final IllegalArgumentException ex) {
                 workflowResultManager.typeNotValidError(
                         "workflow", input.firstParameter(), CommandUtils.fromEnumToArray(AnyTypeKind.class));
             } catch (final IOException ex) {
-
+                workflowResultManager.genericError(ex.getMessage());
             }
         } else {
             workflowResultManager.commandOptionError(EXPORT_HELP_MESSAGE);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowSyncopeOperations.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowSyncopeOperations.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowSyncopeOperations.java
index 2add12d..173db43 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowSyncopeOperations.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/self/WorkflowSyncopeOperations.java
@@ -37,5 +37,4 @@ public class WorkflowSyncopeOperations {
     public Response exportDefinition(final AnyTypeKind anyTypeKind) {
         return workflowService.exportDefinition(anyTypeKind);
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskCommand.java
index a616692..f95d69f 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskCommand.java
@@ -59,10 +59,10 @@ public class TaskCommand extends AbstractCommand {
                 new TaskList(input).list();
                 break;
             case LIST_RUNNING_JOBS:
-                new TaskRunningJobs().list();
+                new TaskListRunningJobs(input).list();
                 break;
             case LIST_SCHEDULED_JOBS:
-                new TaskScheduledJobs().list();
+                new TaskListScheduledJobs(input).list();
                 break;
             case READ:
                 new TaskRead(input).read();
@@ -85,7 +85,6 @@ public class TaskCommand extends AbstractCommand {
             default:
                 new TaskResultManager().defaultError(input.getOption(), HELP_MESSAGE);
         }
-
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskDelete.java
index e0d4753..c5089ff 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskDelete.java
@@ -43,9 +43,9 @@ public class TaskDelete extends AbstractTaskCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         taskResultManager.notFoundError("Task", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        taskResultManager.generic("You cannot delete task " + parameter);
+                        taskResultManager.genericError("You cannot delete task " + parameter);
                     } else {
-                        taskResultManager.generic(ex.getMessage());
+                        taskResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     taskResultManager.notBooleanDeletedError("task", parameter);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecute.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecute.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecute.java
index dfefae3..a501905 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecute.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecute.java
@@ -51,9 +51,9 @@ public class TaskExecute extends AbstractTaskCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     taskResultManager.notFoundError("Task", input.firstParameter());
                 } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                    taskResultManager.generic("You cannot delete task " + input.firstParameter());
+                    taskResultManager.genericError("You cannot delete task " + input.firstParameter());
                 } else {
-                    taskResultManager.generic(ex.getMessage());
+                    taskResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 taskResultManager.notBooleanDeletedError("task", input.firstParameter());
@@ -62,5 +62,4 @@ public class TaskExecute extends AbstractTaskCommand {
             taskResultManager.commandOptionError(EXECUTE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionDelete.java
index bb6d694..30cbf42 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionDelete.java
@@ -43,9 +43,9 @@ public class TaskExecutionDelete extends AbstractTaskCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         taskResultManager.notFoundError("Task execution", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        taskResultManager.generic("You cannot delete task execution" + parameter);
+                        taskResultManager.genericError("You cannot delete task execution" + parameter);
                     } else {
-                        taskResultManager.generic(ex.getMessage());
+                        taskResultManager.genericError(ex.getMessage());
                     }
                 } catch (final NumberFormatException ex) {
                     taskResultManager.notBooleanDeletedError("task execution", parameter);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionRead.java
index d83e2ef..c234028 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskExecutionRead.java
@@ -45,7 +45,7 @@ public class TaskExecutionRead extends AbstractTaskCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         taskResultManager.notFoundError("Task execution", parameter);
                     } else {
-                        taskResultManager.generic("Error: " + ex.getMessage());
+                        taskResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
@@ -54,5 +54,4 @@ public class TaskExecutionRead extends AbstractTaskCommand {
             taskResultManager.commandOptionError(EXECUTION_READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskList.java
index b8c08e5..e01141a 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/task/TaskList.java
@@ -47,7 +47,7 @@ public class TaskList extends AbstractTaskCommand {
                 }
                 taskResultManager.fromList(taskType, taskTOs);
             } catch (final SyncopeClientException ex) {
-                taskResultManager.generic(ex.getMessage());
+                taskResultManager.genericError(ex.getMessage());
             } catch (final IllegalArgumentException ex) {
                 taskResultManager.typeNotValidError(
                         "task", input.firstParameter(), CommandUtils.fromEnumToArray(TaskType.class));


[3/3] syncope git commit: message refactoring, SYNCOPE-158

Posted by ma...@apache.org.
message refactoring, SYNCOPE-158


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

Branch: refs/heads/master
Commit: 6d368c8b264e11e35d709365e39e663ede7bc57e
Parents: e486aaf
Author: massi <ma...@tirasa.net>
Authored: Thu Oct 29 13:27:57 2015 +0100
Committer: massi <ma...@tirasa.net>
Committed: Thu Oct 29 13:27:57 2015 +0100

----------------------------------------------------------------------
 .../apache/syncope/client/cli/SyncopeAdm.java   |   7 +-
 .../cli/commands/CommonsResultManager.java      |  13 +-
 .../configuration/ConfigurationCommand.java     |   2 +-
 .../configuration/ConfigurationDelete.java      |   5 +-
 .../configuration/ConfigurationExport.java      |  12 +-
 .../configuration/ConfigurationGet.java         |  21 ++-
 .../configuration/ConfigurationRead.java        |   3 +-
 .../configuration/ConfigurationUpdate.java      |   7 +-
 .../commands/connector/ConnectorCommand.java    |   4 +-
 .../cli/commands/connector/ConnectorDelete.java |   5 +-
 .../cli/commands/connector/ConnectorList.java   |  21 ++-
 .../connector/ConnectorListBundles.java         |  21 ++-
 .../ConnectorListConfigurationProperties.java   |   8 +-
 .../cli/commands/connector/ConnectorRead.java   |  11 +-
 .../connector/ConnectorReadByResource.java      |  11 +-
 .../connector/ConnectorResultManager.java       |  39 +++---
 .../connector/ConnectorSyncopeOperations.java   |   2 +-
 .../cli/commands/domain/DomainCommand.java      |   4 +-
 .../cli/commands/domain/DomainDelete.java       |   5 +-
 .../client/cli/commands/domain/DomainList.java  |  22 ++-
 .../client/cli/commands/domain/DomainRead.java  |   6 +-
 .../commands/domain/DomainResultManager.java    |  12 ++
 .../entitlement/AbstractEntitlementCommand.java |   2 +-
 .../entitlement/EntitlementCommand.java         |   5 +-
 .../commands/entitlement/EntitlementList.java   |  16 ++-
 .../entitlement/EntitlementListRole.java        |   5 +-
 .../entitlement/EntitlementReadByUserId.java    |   2 +-
 .../entitlement/EntitlementReadByUsername.java  |   2 +-
 .../entitlement/EntitlementResultManager.java   |   1 -
 .../entitlement/EntitlementSearchByRole.java    |   3 +-
 .../syncope/client/cli/commands/help/Help.java  |   6 +-
 .../cli/commands/help/HelpResultManager.java    |   3 +
 .../syncope/client/cli/commands/info/Info.java  | 133 +++++++------------
 .../cli/commands/info/InfoResultManager.java    | 126 ++++++++++++++++++
 .../cli/commands/install/InstallCommand.java    |  13 +-
 .../commands/install/InstallResultManager.java  |  10 ++
 .../cli/commands/install/InstallSetup.java      |  20 +--
 .../cli/commands/logger/LoggerCommand.java      |   3 +-
 .../cli/commands/logger/LoggerCreate.java       |   1 -
 .../cli/commands/logger/LoggerDelete.java       |   3 +-
 .../client/cli/commands/logger/LoggerList.java  |  20 ++-
 .../client/cli/commands/logger/LoggerRead.java  |   2 +-
 .../commands/logger/LoggerResultManager.java    |   1 -
 .../cli/commands/logger/LoggerUpdate.java       |   6 +-
 .../cli/commands/logger/LoggerUpdateAll.java    |   3 +-
 .../notification/NotificationCommand.java       |   3 +-
 .../notification/NotificationDelete.java        |   3 +-
 .../commands/notification/NotificationList.java |  23 +++-
 .../commands/notification/NotificationRead.java |   2 +-
 .../cli/commands/policy/PolicyCommand.java      |   1 -
 .../cli/commands/policy/PolicyDelete.java       |   6 +-
 .../client/cli/commands/policy/PolicyList.java  |   2 +-
 .../client/cli/commands/policy/PolicyRead.java  |   4 +-
 .../cli/commands/question/QuestionCommand.java  |   3 +-
 .../cli/commands/question/QuestionDelete.java   |   3 +-
 .../cli/commands/question/QuestionList.java     |  21 ++-
 .../cli/commands/question/QuestionRead.java     |   3 +-
 .../question/QuestionSyncopeOperations.java     |   1 -
 .../client/cli/commands/realm/RealmCommand.java |   3 +-
 .../client/cli/commands/realm/RealmList.java    |  21 ++-
 .../commands/realm/RealmSyncopeOperations.java  |   1 -
 .../cli/commands/report/ReportCommand.java      |   5 +-
 .../cli/commands/report/ReportDelete.java       |   5 +-
 .../commands/report/ReportDeleteExecution.java  |   7 +-
 .../cli/commands/report/ReportExecute.java      |   6 +-
 .../commands/report/ReportExportExecution.java  |  18 +--
 .../client/cli/commands/report/ReportList.java  |  22 ++-
 .../cli/commands/report/ReportListJobs.java     |  23 +++-
 .../client/cli/commands/report/ReportRead.java  |   2 +-
 .../commands/report/ReportReadExecution.java    |   4 +-
 .../cli/commands/resource/ResourceCommand.java  |   3 +-
 .../cli/commands/resource/ResourceDelete.java   |   3 +-
 .../cli/commands/resource/ResourceList.java     |  21 ++-
 .../cli/commands/resource/ResourceRead.java     |   3 +-
 .../resource/ResourceResultManager.java         |   2 -
 .../client/cli/commands/role/RoleCommand.java   |   3 +-
 .../client/cli/commands/role/RoleDelete.java    |   2 +-
 .../client/cli/commands/role/RoleList.java      |  21 ++-
 .../client/cli/commands/role/RoleRead.java      |   3 +-
 .../commands/role/RoleSyncopeOperations.java    |   1 -
 .../cli/commands/schema/SchemaCommand.java      |   8 +-
 .../cli/commands/schema/SchemaDelete.java       |   5 +-
 .../client/cli/commands/schema/SchemaList.java  |   2 +-
 .../cli/commands/schema/SchemaListAll.java      |  54 +++++---
 .../cli/commands/schema/SchemaListDerived.java  |  27 +++-
 .../cli/commands/schema/SchemaListPlain.java    |  27 +++-
 .../cli/commands/schema/SchemaListVirtual.java  |  27 +++-
 .../client/cli/commands/schema/SchemaRead.java  |   3 +-
 .../cli/commands/self/WorkflowCommand.java      |   1 -
 .../commands/self/WorkflowExportDefinition.java |   2 +-
 .../commands/self/WorkflowExportDiagram.java    |   6 +-
 .../self/WorkflowSyncopeOperations.java         |   1 -
 .../client/cli/commands/task/TaskCommand.java   |   5 +-
 .../client/cli/commands/task/TaskDelete.java    |   4 +-
 .../client/cli/commands/task/TaskExecute.java   |   5 +-
 .../cli/commands/task/TaskExecutionDelete.java  |   4 +-
 .../cli/commands/task/TaskExecutionRead.java    |   3 +-
 .../client/cli/commands/task/TaskList.java      |   2 +-
 .../cli/commands/task/TaskListRunningJobs.java  |  46 +++++++
 .../commands/task/TaskListScheduledJobs.java    |  45 +++++++
 .../client/cli/commands/task/TaskRead.java      |   3 +-
 .../cli/commands/task/TaskRunningJobs.java      |  33 -----
 .../cli/commands/task/TaskScheduledJobs.java    |  33 -----
 .../client/cli/commands/user/UserCommand.java   |   3 +-
 .../client/cli/commands/user/UserCount.java     |   8 +-
 .../client/cli/commands/user/UserDelete.java    |   2 +-
 .../client/cli/commands/user/UserGetKey.java    |   4 +-
 .../cli/commands/user/UserGetUsername.java      |   4 +-
 .../client/cli/commands/user/UserList.java      |  43 +++---
 .../client/cli/commands/user/UserRead.java      |   3 +-
 .../cli/commands/user/UserResultManager.java    |   1 -
 .../commands/user/UserSearchByAttribute.java    |  11 +-
 .../cli/commands/user/UserSearchByResource.java |   9 +-
 .../cli/commands/user/UserSearchByRole.java     |   9 +-
 .../syncope/client/cli/util/CommandUtils.java   |   1 -
 .../client/cli/util/FileSystemUtils.java        |   9 +-
 .../syncope/client/cli/util/JasyptUtils.java    |   1 -
 .../syncope/client/cli/view/Messages.java       |   7 +-
 118 files changed, 835 insertions(+), 507 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/SyncopeAdm.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/SyncopeAdm.java b/client/cli/src/main/java/org/apache/syncope/client/cli/SyncopeAdm.java
index 7308c57..8b6150a 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/SyncopeAdm.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/SyncopeAdm.java
@@ -50,12 +50,13 @@ public final class SyncopeAdm {
             System.out.println(helpMessage());
         } catch (final IllegalArgumentException ex) {
             LOG.error("Error in main", ex);
-            RESULT_MANAGER.generic(ex.getMessage());
+            RESULT_MANAGER.genericError(ex.getMessage());
             if (!ex.getMessage().startsWith("It seems you")) {
                 System.out.println(helpMessage());
             }
         } catch (final ProcessingException e) {
-            RESULT_MANAGER.generic("Syncope server offline", e.getCause().getMessage());
+            RESULT_MANAGER.genericError("Syncope server offline");
+            RESULT_MANAGER.genericError(e.getCause().getMessage());
         }
 
     }
@@ -73,7 +74,7 @@ public final class SyncopeAdm {
                 helpMessageBuilder.append("\n");
             }
         } catch (final IllegalAccessException | IllegalArgumentException | InstantiationException ex) {
-            RESULT_MANAGER.generic(ex.getMessage());
+            RESULT_MANAGER.genericError(ex.getMessage());
         }
 
         return helpMessageBuilder.toString();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/CommonsResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/CommonsResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/CommonsResultManager.java
index 39c32e6..4764d4d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/CommonsResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/CommonsResultManager.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.client.cli.commands;
 
+import java.util.List;
 import java.util.Set;
 import org.apache.syncope.client.cli.view.Messages;
 import org.apache.syncope.common.lib.types.ConnConfProperty;
@@ -28,6 +29,10 @@ public abstract class CommonsResultManager {
         Messages.printIdNotNumberDeletedMessage(what, key);
     }
 
+    public void unnecessaryParameters(final List<String> parameters, final String helpMessage) {
+        Messages.printUnnecessaryParameters(parameters, helpMessage);
+    }
+
     public void deletedMessage(final String what, final String key) {
         Messages.printDeletedMessage(what, key);
     }
@@ -52,10 +57,14 @@ public abstract class CommonsResultManager {
         Messages.printDefaultMessage(option, helpMessage);
     }
 
-    public void generic(final String... messages) {
+    public void genericMessage(final String... messages) {
         Messages.printMessage(messages);
     }
-    
+
+    public void genericError(final String error) {
+        Messages.printMessage("Error: " + error);
+    }
+
     protected void printConfiguration(final Set<ConnConfProperty> configurationPropertys) {
         for (final ConnConfProperty configuration : configurationPropertys) {
             System.out.println("       name: " + configuration.getSchema().getName());

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationCommand.java
index 00fe6fa..28cebf4 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationCommand.java
@@ -49,7 +49,7 @@ public class ConfigurationCommand extends AbstractCommand {
 
         switch (Options.fromName(input.getOption())) {
             case GET:
-                new ConfigurationGet().get();
+                new ConfigurationGet(input).get();
                 break;
             case READ:
                 new ConfigurationRead(input).read();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationDelete.java
index 870cb27..79b679b 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationDelete.java
@@ -42,9 +42,9 @@ public class ConfigurationDelete extends AbstractConfigurationCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         configurationResultManager.notFoundError("Configuration", parameter);
                     } else if (ex.getMessage().startsWith("DataIntegrityViolation")) {
-                        configurationResultManager.generic("You cannot delete configuration", parameter);
+                        configurationResultManager.genericError("You cannot delete configuration " + parameter);
                     } else {
-                        configurationResultManager.generic(ex.getMessage());
+                        configurationResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
@@ -53,5 +53,4 @@ public class ConfigurationDelete extends AbstractConfigurationCommand {
             configurationResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationExport.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationExport.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationExport.java
index d08677a..2eaeb75 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationExport.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationExport.java
@@ -47,22 +47,22 @@ public class ConfigurationExport extends AbstractConfigurationCommand {
                 XMLUtils.createXMLFile(
                         (SequenceInputStream) configurationSyncopeOperations.export().getEntity(),
                         input.firstParameter() + EXPORT_FILE_NAME);
-                configurationResultManager.generic(
+                configurationResultManager.genericMessage(
                         input.firstParameter() + EXPORT_FILE_NAME + " successfully created");
             } catch (final IOException ex) {
-                configurationResultManager.generic(ex.getMessage());
+                configurationResultManager.genericError(ex.getMessage());
             } catch (ParserConfigurationException | SAXException | TransformerConfigurationException ex) {
-                configurationResultManager.generic(
+                configurationResultManager.genericError(
                         "Error creating " + input.firstParameter() + EXPORT_FILE_NAME + " " + ex.getMessage());
             } catch (final TransformerException ex) {
                 if (ex.getCause() instanceof FileNotFoundException) {
-                    configurationResultManager.generic("Permission denied on " + input.firstParameter());
+                    configurationResultManager.genericError("Permission denied on " + input.firstParameter());
                 } else {
-                    configurationResultManager.generic(
+                    configurationResultManager.genericError(
                             "Error creating " + input.firstParameter() + EXPORT_FILE_NAME + " " + ex.getMessage());
                 }
             } catch (final SyncopeClientException ex) {
-                configurationResultManager.generic("Error calling configuration service " + ex.getMessage());
+                configurationResultManager.genericError("Error calling configuration service " + ex.getMessage());
             }
         } else {
             configurationResultManager.commandOptionError(EXPORT_HELP_MESSAGE);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationGet.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationGet.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationGet.java
index 3cad82d..f0b7682 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationGet.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationGet.java
@@ -19,18 +19,27 @@
 package org.apache.syncope.client.cli.commands.configuration;
 
 import java.util.LinkedList;
+import org.apache.syncope.client.cli.Input;
 
 public class ConfigurationGet extends AbstractConfigurationCommand {
 
-    public ConfigurationGet() {
+    private static final String GET_HELP_MESSAGE = "configuration --get";
+
+    private final Input input;
+
+    public ConfigurationGet(final Input input) {
+        this.input = input;
     }
 
     public void get() {
-        try {
-            configurationResultManager.fromGet(new LinkedList<>(configurationSyncopeOperations.list()));
-        } catch (final Exception ex) {
-            configurationResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                configurationResultManager.fromGet(new LinkedList<>(configurationSyncopeOperations.list()));
+            } catch (final Exception ex) {
+                configurationResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            configurationResultManager.unnecessaryParameters(input.listParameters(), GET_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationRead.java
index 5bccb3f..e315f33 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationRead.java
@@ -45,7 +45,7 @@ public class ConfigurationRead extends AbstractConfigurationCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         configurationResultManager.notFoundError("Configuration", parameter);
                     } else {
-                        configurationResultManager.generic(ex.getMessage());
+                        configurationResultManager.genericError(ex.getMessage());
                     }
                     failed = true;
                     break;
@@ -58,5 +58,4 @@ public class ConfigurationRead extends AbstractConfigurationCommand {
             configurationResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationUpdate.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationUpdate.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationUpdate.java
index 2f85ffa..e3aff4e 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationUpdate.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/configuration/ConfigurationUpdate.java
@@ -50,17 +50,18 @@ public class ConfigurationUpdate extends AbstractConfigurationCommand {
                     configurationSyncopeOperations.set(attrTO);
                     attrList.add(attrTO);
                 } catch (final IllegalArgumentException ex) {
-                    configurationResultManager.generic(ex.getMessage(), UPDATE_HELP_MESSAGE);
+                    configurationResultManager.genericError(ex.getMessage());
+                    configurationResultManager.genericError(UPDATE_HELP_MESSAGE);
                     failed = true;
                     break;
                 } catch (final SyncopeClientException | WebServiceException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         configurationResultManager.notFoundError("Configuration", pairParameter.getKey());
                     } else if (ex.getMessage().startsWith("InvalidValues")) {
-                        configurationResultManager.generic(
+                        configurationResultManager.genericError(
                                 pairParameter.getValue() + " is not a valid value for " + pairParameter.getKey());
                     } else {
-                        configurationResultManager.generic(ex.getMessage());
+                        configurationResultManager.genericError(ex.getMessage());
                     }
                     failed = true;
                     break;

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorCommand.java
index 83a03cb..c87055c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorCommand.java
@@ -48,10 +48,10 @@ public class ConnectorCommand extends AbstractCommand {
 
         switch (ConnectorOptions.fromName(input.getOption())) {
             case LIST:
-                new ConnectorList().list();
+                new ConnectorList(input).list();
                 break;
             case LIST_BUNDLES:
-                new ConnectorListBundles().list();
+                new ConnectorListBundles(input).list();
                 break;
             case LIST_CONFIGURATION:
                 new ConnectorListConfigurationProperties(input).list();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorDelete.java
index 6e26b9b..1454d28 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorDelete.java
@@ -48,15 +48,14 @@ public class ConnectorDelete extends AbstractConnectorCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         connectorResultManager.notFoundError("Connector", parameter);
                     } else {
-                        connectorResultManager.generic(ex.getMessage());
+                        connectorResultManager.genericError(ex.getMessage());
                     }
                     break;
                 }
             }
-            connectorResultManager.toView(connInstanceTOs);
+            connectorResultManager.printConnectors(connInstanceTOs);
         } else {
             connectorResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorList.java
index f063228..1c86bbb 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorList.java
@@ -18,15 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.connector;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class ConnectorList extends AbstractConnectorCommand {
 
+    private static final String LIST_HELP_MESSAGE = "connector --list";
+
+    private final Input input;
+
+    public ConnectorList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            connectorResultManager.toView(connectorSyncopeOperations.list());
-        } catch (final SyncopeClientException ex) {
-            connectorResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                connectorResultManager.printConnectors(connectorSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                connectorResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            connectorResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListBundles.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListBundles.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListBundles.java
index d77cd83..293fa13 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListBundles.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListBundles.java
@@ -18,15 +18,28 @@
  */
 package org.apache.syncope.client.cli.commands.connector;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class ConnectorListBundles extends AbstractConnectorCommand {
 
+    private static final String LIST_HELP_MESSAGE = "connector --list-bundles";
+
+    private final Input input;
+
+    public ConnectorListBundles(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        try {
-            connectorResultManager.fromListBundles(connectorSyncopeOperations.getBundles());
-        } catch (final SyncopeClientException ex) {
-            connectorResultManager.generic(ex.getMessage());
+        if (input.parameterNumber() == 0) {
+            try {
+                connectorResultManager.printBundles(connectorSyncopeOperations.getBundles());
+            } catch (final SyncopeClientException ex) {
+                connectorResultManager.genericError(ex.getMessage());
+            }
+        } else {
+            connectorResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListConfigurationProperties.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListConfigurationProperties.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListConfigurationProperties.java
index 91a0021..5f5197c 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListConfigurationProperties.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorListConfigurationProperties.java
@@ -24,7 +24,7 @@ import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class ConnectorListConfigurationProperties extends AbstractConnectorCommand {
 
-    private static final String LIST_CONFIGURATION_HELP_MESSAGE 
+    private static final String LIST_CONFIGURATION_HELP_MESSAGE
             = "connector --list-configuration-properties {CONNECTOR-ID} {CONNECTOR-ID} [...]";
 
     private final Input input;
@@ -37,7 +37,7 @@ public class ConnectorListConfigurationProperties extends AbstractConnectorComma
         if (input.getParameters().length >= 1) {
             for (final String parameter : input.getParameters()) {
                 try {
-                    connectorResultManager.fromConfigurationProperties(
+                    connectorResultManager.printConfigurationProperties(
                             connectorSyncopeOperations.read(parameter).getConf());
                 } catch (final NumberFormatException ex) {
                     connectorResultManager.numberFormatException("connector", parameter);
@@ -45,14 +45,12 @@ public class ConnectorListConfigurationProperties extends AbstractConnectorComma
                     if (ex.getMessage().startsWith("NotFound")) {
                         connectorResultManager.notFoundError("Connector", parameter);
                     } else {
-                        connectorResultManager.generic(ex.getMessage());
+                        connectorResultManager.genericError(ex.getMessage());
                     }
-                    break;
                 }
             }
         } else {
             connectorResultManager.commandOptionError(LIST_CONFIGURATION_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorRead.java
index e2dca1e..dc29d74 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorRead.java
@@ -18,12 +18,9 @@
  */
 package org.apache.syncope.client.cli.commands.connector;
 
-import java.util.ArrayList;
-import java.util.List;
 import javax.xml.ws.WebServiceException;
 import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
-import org.apache.syncope.common.lib.to.ConnInstanceTO;
 
 public class ConnectorRead extends AbstractConnectorCommand {
 
@@ -37,25 +34,21 @@ public class ConnectorRead extends AbstractConnectorCommand {
 
     public void read() {
         if (input.getParameters().length >= 1) {
-            final List<ConnInstanceTO> connInstanceTOs = new ArrayList<>();
             for (final String parameter : input.getParameters()) {
                 try {
-                    connInstanceTOs.add(connectorSyncopeOperations.read(parameter));
+                    connectorResultManager.printConnector(connectorSyncopeOperations.read(parameter));
                 } catch (final NumberFormatException ex) {
                     connectorResultManager.numberFormatException("connector", parameter);
                 } catch (final SyncopeClientException | WebServiceException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         connectorResultManager.notFoundError("Connector", parameter);
                     } else {
-                        connectorResultManager.generic(ex.getMessage());
+                        connectorResultManager.genericError(ex.getMessage());
                     }
-                    break;
                 }
             }
-            connectorResultManager.toView(connInstanceTOs);
         } else {
             connectorResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorReadByResource.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorReadByResource.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorReadByResource.java
index d062077..cc8bbac 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorReadByResource.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorReadByResource.java
@@ -18,12 +18,9 @@
  */
 package org.apache.syncope.client.cli.commands.connector;
 
-import java.util.ArrayList;
-import java.util.List;
 import javax.xml.ws.WebServiceException;
 import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
-import org.apache.syncope.common.lib.to.ConnInstanceTO;
 
 public class ConnectorReadByResource extends AbstractConnectorCommand {
 
@@ -38,23 +35,19 @@ public class ConnectorReadByResource extends AbstractConnectorCommand {
 
     public void read() {
         if (input.getParameters().length >= 1) {
-            final List<ConnInstanceTO> connInstanceTOs = new ArrayList<>();
             for (final String parameter : input.getParameters()) {
                 try {
-                    connInstanceTOs.add(connectorSyncopeOperations.readByResource(parameter));
+                    connectorResultManager.printConnector(connectorSyncopeOperations.readByResource(parameter));
                 } catch (final SyncopeClientException | WebServiceException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         connectorResultManager.notFoundError("Resource", parameter);
                     } else {
-                        connectorResultManager.generic(ex.getMessage());
+                        connectorResultManager.genericError(ex.getMessage());
                     }
-                    break;
                 }
             }
-            connectorResultManager.toView(connInstanceTOs);
         } else {
             connectorResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorResultManager.java
index 7c72349..4ff92ed 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorResultManager.java
@@ -30,30 +30,13 @@ import org.apache.syncope.common.lib.types.ConnectorCapability;
 
 public class ConnectorResultManager extends CommonsResultManager {
 
-    public void toView(final List<ConnInstanceTO> connInstanceTOs) {
+    public void printConnectors(final List<ConnInstanceTO> connInstanceTOs) {
         for (final ConnInstanceTO connInstanceTO : connInstanceTOs) {
             printConnector(connInstanceTO);
         }
     }
 
-    public void fromListBundles(final List<ConnBundleTO> connBundleTOs) {
-        for (final ConnBundleTO connBundleTO : connBundleTOs) {
-            System.out.println(" > BUNDLE NAME: " + connBundleTO.getBundleName());
-            System.out.println("    connector name: " + connBundleTO.getConnectorName());
-            System.out.println("    display name: " + connBundleTO.getDisplayName());
-            System.out.println("    location: " + connBundleTO.getLocation());
-            System.out.println("    version: " + connBundleTO.getVersion());
-            System.out.println("    PROPERTIES:");
-            printConfPropSchema(connBundleTO.getProperties());
-        }
-    }
-
-    public void fromConfigurationProperties(final Set<ConnConfProperty> connConfPropertys) {
-        printConfiguration(connConfPropertys);
-
-    }
-
-    private void printConnector(final ConnInstanceTO connInstanceTO) {
+    public void printConnector(final ConnInstanceTO connInstanceTO) {
         System.out.println(" > CONNECTOR ID: " + connInstanceTO.getKey());
         System.out.println("    bundle name: " + connInstanceTO.getBundleName());
         System.out.println("    connector name: " + connInstanceTO.getConnectorName());
@@ -67,6 +50,7 @@ public class ConnectorResultManager extends CommonsResultManager {
         printConfiguration(connInstanceTO.getConf());
         System.out.println("    POOL CONFIGURATION:");
         printConfPool(connInstanceTO.getPoolConf());
+        System.out.println("");
     }
 
     private void printCapabilities(final Set<ConnectorCapability> capabilities) {
@@ -83,6 +67,18 @@ public class ConnectorResultManager extends CommonsResultManager {
         System.out.println("       max wait: " + connPoolConfTO.getMaxWait());
     }
 
+    public void printBundles(final List<ConnBundleTO> connBundleTOs) {
+        for (final ConnBundleTO connBundleTO : connBundleTOs) {
+            System.out.println(" > BUNDLE NAME: " + connBundleTO.getBundleName());
+            System.out.println("    connector name: " + connBundleTO.getConnectorName());
+            System.out.println("    display name: " + connBundleTO.getDisplayName());
+            System.out.println("    location: " + connBundleTO.getLocation());
+            System.out.println("    version: " + connBundleTO.getVersion());
+            System.out.println("    PROPERTIES:");
+            printConfPropSchema(connBundleTO.getProperties());
+        }
+    }
+
     private void printConfPropSchema(final List<ConnConfPropSchema> connConfPropSchemas) {
         for (final ConnConfPropSchema connConfPropSchema : connConfPropSchemas) {
             System.out.println("       name: " + connConfPropSchema.getName());
@@ -94,4 +90,9 @@ public class ConnectorResultManager extends CommonsResultManager {
             System.out.println("");
         }
     }
+
+    public void printConfigurationProperties(final Set<ConnConfProperty> connConfPropertys) {
+        printConfiguration(connConfPropertys);
+
+    }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorSyncopeOperations.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorSyncopeOperations.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorSyncopeOperations.java
index b496063..11ac036 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorSyncopeOperations.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/connector/ConnectorSyncopeOperations.java
@@ -26,7 +26,7 @@ import org.apache.syncope.common.rest.api.service.ConnectorService;
 
 public class ConnectorSyncopeOperations {
 
-    protected final ConnectorService connectorService = SyncopeServices.get(ConnectorService.class);
+    private final ConnectorService connectorService = SyncopeServices.get(ConnectorService.class);
 
     public ConnInstanceTO readByResource(final String resourceName) {
         return connectorService.readByResource(resourceName, null);

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainCommand.java
index e709b81..adda76b 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainCommand.java
@@ -33,7 +33,7 @@ public class DomainCommand extends AbstractCommand {
             + "    --help \n"
             + "    --list \n"
             + "    --delete \n"
-            + "       Syntax: --delete {DOMAIN-KEY} {DOMAIN-KEY} [...]\n";
+            + "       Syntax: --delete {DOMAIN-NAME} {DOMAIN-NAME} [...]\n";
 
     @Override
     public void execute(final Input input) {
@@ -42,7 +42,7 @@ public class DomainCommand extends AbstractCommand {
         }
         switch (Options.fromName(input.getOption())) {
             case LIST:
-                new DomainList().list();
+                new DomainList(input).list();
                 break;
             case DELETE:
                 new DomainDelete(input).delete();

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainDelete.java
index f85d3c9..06e733a 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainDelete.java
@@ -23,7 +23,7 @@ import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class DomainDelete extends AbstractDomainCommand {
 
-    private static final String DELETE_HELP_MESSAGE = "domain --delete {DOMAIN-KEY} {DOMAIN-KEY} [...]";
+    private static final String DELETE_HELP_MESSAGE = "domain --delete {DOMAIN-NAME} {DOMAIN-NAME} [...]";
 
     private final Input input;
 
@@ -41,7 +41,7 @@ public class DomainDelete extends AbstractDomainCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         domainResultManager.notFoundError("Domain", parameter);
                     } else {
-                        domainResultManager.generic(ex.getMessage());
+                        domainResultManager.genericError(ex.getMessage());
                     }
                 }
             }
@@ -49,5 +49,4 @@ public class DomainDelete extends AbstractDomainCommand {
             domainResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainList.java
index 6cf7b7d..7c60844 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainList.java
@@ -18,21 +18,29 @@
  */
 package org.apache.syncope.client.cli.commands.domain;
 
+import org.apache.syncope.client.cli.Input;
 import org.apache.syncope.common.lib.SyncopeClientException;
-import org.apache.syncope.common.lib.to.DomainTO;
 
 public class DomainList extends AbstractDomainCommand {
 
-    public DomainList() {
+    private static final String LIST_HELP_MESSAGE = "domain --list";
+
+    private final Input input;
+
+    public DomainList(final Input input) {
+        this.input = input;
     }
 
     public void list() {
-        try {
-            for (final DomainTO domainTO : domainSyncopeOperations.list()) {
-                domainResultManager.generic(domainTO.getKey());
+        if (input.parameterNumber() == 0) {
+            try {
+                domainResultManager.toView(domainSyncopeOperations.list());
+            } catch (final SyncopeClientException ex) {
+                domainResultManager.genericError(ex.getMessage());
             }
-        } catch (final SyncopeClientException ex) {
-            domainResultManager.generic("Error: " + ex.getMessage());
+        } else {
+            domainResultManager.unnecessaryParameters(input.listParameters(), LIST_HELP_MESSAGE);
         }
+
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainRead.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainRead.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainRead.java
index 2eaa75a..94989ff 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainRead.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainRead.java
@@ -23,7 +23,7 @@ import org.apache.syncope.common.lib.SyncopeClientException;
 
 public class DomainRead extends AbstractDomainCommand {
 
-    private static final String READ_HELP_MESSAGE = "domain --read {DOMAIN-KEY} {DOMAIN-KEY} [...]";
+    private static final String READ_HELP_MESSAGE = "domain --read {DOMAIN-NAME} {DOMAIN-NAME} [...]";
 
     private final Input input;
 
@@ -35,12 +35,12 @@ public class DomainRead extends AbstractDomainCommand {
         if (input.parameterNumber() >= 1) {
             for (final String parameter : input.getParameters()) {
                 try {
-                    domainResultManager.generic(domainSyncopeOperations.read(parameter).getKey());
+                    domainResultManager.printDomain(domainSyncopeOperations.read(parameter));
                 } catch (final SyncopeClientException ex) {
                     if (ex.getMessage().startsWith("NotFound")) {
                         domainResultManager.notFoundError("Domain", parameter);
                     } else {
-                        domainResultManager.generic(ex.getMessage());
+                        domainResultManager.genericError(ex.getMessage());
                     }
                 }
             }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainResultManager.java
index 6066c5d..d0b28ed 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/domain/DomainResultManager.java
@@ -18,8 +18,20 @@
  */
 package org.apache.syncope.client.cli.commands.domain;
 
+import java.util.List;
 import org.apache.syncope.client.cli.commands.CommonsResultManager;
+import org.apache.syncope.common.lib.to.DomainTO;
 
 public class DomainResultManager extends CommonsResultManager {
 
+    public void toView(final List<DomainTO> domainTOs) {
+        for (final DomainTO domainTO : domainTOs) {
+            printDomain(domainTO);
+        }
+    }
+
+    public void printDomain(final DomainTO domainTO) {
+        System.out.println(" > DOIMAIN NAME: " + domainTO.getKey());
+        System.out.println("    chiper algorithm: " + domainTO.getAdminCipherAlgorithm());
+    }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/AbstractEntitlementCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/AbstractEntitlementCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/AbstractEntitlementCommand.java
index acc8aa5..f09665d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/AbstractEntitlementCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/AbstractEntitlementCommand.java
@@ -18,7 +18,7 @@
  */
 package org.apache.syncope.client.cli.commands.entitlement;
 
-public class AbstractEntitlementCommand {
+public abstract class AbstractEntitlementCommand {
 
     protected final EntitlementSyncopeOperations entitlementSyncopeOperations = new EntitlementSyncopeOperations();
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementCommand.java
index 5ca478c..1dc4966 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementCommand.java
@@ -37,7 +37,7 @@ public class EntitlementCommand extends AbstractCommand {
             + "    --read-by-username\n"
             + "       Syntax: --read-by-username {USERNAME}\n"
             + "    --read-by-userid\n"
-            + "       Syntax: --read-by-userid {USERID}\n"
+            + "       Syntax: --read-by-userid {USER-ID}\n"
             + "    --search-by-role\n"
             + "       Syntax: --search-by-role {ROLE-ID}";
 
@@ -49,7 +49,7 @@ public class EntitlementCommand extends AbstractCommand {
 
         switch (EntitlementOptions.fromName(input.getOption())) {
             case LIST:
-                new EntitlementList().list();
+                new EntitlementList(input).list();
                 break;
             case READ_BY_USERNAME:
                 new EntitlementReadByUsername(input).read();
@@ -117,5 +117,4 @@ public class EntitlementCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementList.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementList.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementList.java
index d0c532c..e204823 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementList.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementList.java
@@ -18,9 +18,23 @@
  */
 package org.apache.syncope.client.cli.commands.entitlement;
 
+import org.apache.syncope.client.cli.Input;
+
 public class EntitlementList extends AbstractEntitlementCommand {
 
+    private static final String READ_HELP_MESSAGE = "entitlement --list";
+
+    private final Input input;
+
+    public EntitlementList(final Input input) {
+        this.input = input;
+    }
+
     public void list() {
-        entitlementResultManager.toView(entitlementSyncopeOperations.list());
+        if (input.parameterNumber() == 0) {
+            entitlementResultManager.toView(entitlementSyncopeOperations.list());
+        } else {
+            entitlementResultManager.unnecessaryParameters(input.listParameters(), READ_HELP_MESSAGE);
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementListRole.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementListRole.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementListRole.java
index f65757c..0b4144e 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementListRole.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementListRole.java
@@ -43,13 +43,13 @@ public class EntitlementListRole extends AbstractEntitlementCommand {
                 } else if (roleTOs != null && !roleTOs.isEmpty()) {
                     entitlementResultManager.rolesToView(roleTOs);
                 } else {
-                    entitlementResultManager.generic("No roles found for entitlement " + input.firstParameter());
+                    entitlementResultManager.genericMessage("No roles found for entitlement " + input.firstParameter());
                 }
             } catch (final SyncopeClientException | WebServiceException ex) {
                 if (ex.getMessage().startsWith("NotFound")) {
                     entitlementResultManager.notFoundError("User", input.firstParameter());
                 } else {
-                    entitlementResultManager.generic("Error: " + ex.getMessage());
+                    entitlementResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 entitlementResultManager.numberFormatException("user", input.firstParameter());
@@ -58,5 +58,4 @@ public class EntitlementListRole extends AbstractEntitlementCommand {
             entitlementResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUserId.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUserId.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUserId.java
index 99f6305..3cd41cb 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUserId.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUserId.java
@@ -41,7 +41,7 @@ public class EntitlementReadByUserId extends AbstractEntitlementCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     entitlementResultManager.notFoundError("User", input.firstParameter());
                 } else {
-                    entitlementResultManager.generic("Error: " + ex.getMessage());
+                    entitlementResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 entitlementResultManager.numberFormatException("user", input.firstParameter());

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUsername.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUsername.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUsername.java
index bfcec00..40a73fc 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUsername.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementReadByUsername.java
@@ -41,7 +41,7 @@ public class EntitlementReadByUsername extends AbstractEntitlementCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     entitlementResultManager.notFoundError("User", input.firstParameter());
                 } else {
-                    entitlementResultManager.generic("Error: " + ex.getMessage());
+                    entitlementResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 entitlementResultManager.numberFormatException("user", input.firstParameter());

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementResultManager.java
index 01585d2..e6003ad 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementResultManager.java
@@ -50,5 +50,4 @@ public class EntitlementResultManager extends CommonsResultManager {
             System.out.println("       - " + realm);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementSearchByRole.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementSearchByRole.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementSearchByRole.java
index 6d756f0..91f9828 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementSearchByRole.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/entitlement/EntitlementSearchByRole.java
@@ -41,7 +41,7 @@ public class EntitlementSearchByRole extends AbstractEntitlementCommand {
                 if (ex.getMessage().startsWith("NotFound")) {
                     entitlementResultManager.notFoundError("User", input.firstParameter());
                 } else {
-                    entitlementResultManager.generic("Error: " + ex.getMessage());
+                    entitlementResultManager.genericError(ex.getMessage());
                 }
             } catch (final NumberFormatException ex) {
                 entitlementResultManager.numberFormatException("user", input.firstParameter());
@@ -50,5 +50,4 @@ public class EntitlementSearchByRole extends AbstractEntitlementCommand {
             entitlementResultManager.commandOptionError(READ_HELP_MESSAGE);
         }
     }
-    
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/Help.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/Help.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/Help.java
index c658beb..0492a26 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/Help.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/Help.java
@@ -24,6 +24,8 @@ import org.apache.syncope.client.cli.util.CommandUtils;
 
 public class Help {
 
+    private final HelpResultManager helpResultManager = new HelpResultManager();
+
     public void help() {
         final StringBuilder generalHelpBuilder = new StringBuilder("General help\n");
         try {
@@ -35,9 +37,9 @@ public class Help {
                         .append("\n")
                         .append(" \n");
             }
-            System.out.println(generalHelpBuilder.toString());
+            helpResultManager.toView(generalHelpBuilder.toString());
         } catch (final IllegalAccessException | IllegalArgumentException | InstantiationException e) {
-            new HelpResultManager().generic(e.getMessage());
+            helpResultManager.genericMessage(e.getMessage());
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/HelpResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/HelpResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/HelpResultManager.java
index 7a67943..b70664d 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/HelpResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/help/HelpResultManager.java
@@ -22,4 +22,7 @@ import org.apache.syncope.client.cli.commands.CommonsResultManager;
 
 public class HelpResultManager extends CommonsResultManager {
 
+    public void toView(final String generalHelp) {
+        System.out.println(generalHelp);
+    }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/Info.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/Info.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/Info.java
index ccf9170..4fa0163 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/Info.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/Info.java
@@ -25,219 +25,188 @@ import org.apache.syncope.common.rest.api.service.SyncopeService;
 public class Info {
 
     private final SyncopeTO syncopeTO = SyncopeServices.get(SyncopeService.class).info();
-    
+
     private final InfoResultManager infoResultManager = new InfoResultManager();
 
     public void version() {
         try {
-            infoResultManager.generic("Syncope version: " + syncopeTO.getVersion());
+            infoResultManager.printVersion(syncopeTO.getVersion());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void pwdResetAllowed() {
         try {
-            infoResultManager.generic("Password reset allowed: " + syncopeTO.isPwdResetAllowed());
+            infoResultManager.printPwdResetAllowed(syncopeTO.isPwdResetAllowed());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void resetWithSecurityQuestion() {
         try {
-            infoResultManager.generic("Password reset requiring security question: "
-                    + syncopeTO.isPwdResetRequiringSecurityQuestions());
+            infoResultManager.printPwdResetRequiringSecurityQuestions(syncopeTO.isPwdResetRequiringSecurityQuestions());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void selfRegistrationAllowed() {
         try {
-            infoResultManager.generic("Self registration allowed: " + syncopeTO.isSelfRegAllowed());
+            infoResultManager.printSelfRegistrationAllowed(syncopeTO.isSelfRegAllowed());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void provisioningManager() {
         try {
-            infoResultManager.generic(
-                    "Any object provisioning manager class: " + syncopeTO.getAnyObjectProvisioningManager(),
-                    "User       provisioning manager class: " + syncopeTO.getUserProvisioningManager(),
-                    "Group      provisioning manager class: " + syncopeTO.getGroupProvisioningManager());
+            infoResultManager.printProvisioningManager(
+                    syncopeTO.getAnyObjectProvisioningManager(),
+                    syncopeTO.getUserProvisioningManager(),
+                    syncopeTO.getGroupProvisioningManager());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void workflowAdapter() {
         try {
-            infoResultManager.generic(
-                    "Any object workflow adapter class: " + syncopeTO.getAnyObjectWorkflowAdapter(),
-                    "User       workflow adapter class: " + syncopeTO.getUserWorkflowAdapter(),
-                    "Group      workflow adapter class: " + syncopeTO.getGroupWorkflowAdapter());
+            infoResultManager.printWorkflowAdapter(
+                    syncopeTO.getAnyObjectWorkflowAdapter(),
+                    syncopeTO.getUserWorkflowAdapter(),
+                    syncopeTO.getGroupWorkflowAdapter());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void accountRules() {
         try {
-            for (final String accountRule : syncopeTO.getAccountRules()) {
-                infoResultManager.generic("Account rule: " + accountRule);
-            }
+            infoResultManager.printAccountRules(syncopeTO.getAccountRules());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void connidLocation() {
         try {
-            for (final String location : syncopeTO.getConnIdLocations()) {
-                infoResultManager.generic("ConnId location: " + location);
-            }
+            infoResultManager.printConnidLocations(syncopeTO.getConnIdLocations());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void logicActions() {
         try {
-            for (final String logic : syncopeTO.getLogicActions()) {
-                infoResultManager.generic("Logic action: " + logic);
-            }
+            infoResultManager.printLogicActions(syncopeTO.getLogicActions());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void mailTemplates() {
         try {
-            for (final String template : syncopeTO.getMailTemplates()) {
-                infoResultManager.generic("Mail template: " + template);
-            }
+            infoResultManager.printMailTemplates(syncopeTO.getMailTemplates());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void mappingItemTransformers() {
         try {
-            for (final String tranformer : syncopeTO.getMappingItemTransformers()) {
-                infoResultManager.generic("Mapping item tranformer: " + tranformer);
-            }
+            infoResultManager.printMappingItemTransformers(syncopeTO.getMappingItemTransformers());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void passwordRules() {
         try {
-            for (final String rules : syncopeTO.getPasswordRules()) {
-                infoResultManager.generic("Password rule: " + rules);
-            }
+            infoResultManager.printPasswordRules(syncopeTO.getPasswordRules());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void propagationActions() {
         try {
-            for (final String action : syncopeTO.getPropagationActions()) {
-                infoResultManager.generic("Propagation action: " + action);
-            }
+            infoResultManager.printPropagationActions(syncopeTO.getPropagationActions());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void pushActions() {
         try {
-            for (final String action : syncopeTO.getPushActions()) {
-                infoResultManager.generic("Push action: " + action);
-            }
+            infoResultManager.printPushActions(syncopeTO.getPushActions());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void pushCorrelationActions() {
         try {
-            for (final String rule : syncopeTO.getPushCorrelationRules()) {
-                infoResultManager.generic("Push correlation rule: " + rule);
-            }
+            infoResultManager.printCorrelationActions(syncopeTO.getPushCorrelationRules());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void reportlets() {
         try {
-            for (final String reportlet : syncopeTO.getReportlets()) {
-                infoResultManager.generic("Reportlet: " + reportlet);
-            }
+            infoResultManager.printReportlets(syncopeTO.getReportlets());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void syncActions() {
         try {
-            for (final String action : syncopeTO.getSyncActions()) {
-                infoResultManager.generic("Sync action: " + action);
-            }
+            infoResultManager.printSyncActions(syncopeTO.getSyncActions());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void syncCorrelationRules() {
         try {
-            for (final String rule : syncopeTO.getSyncCorrelationRules()) {
-                infoResultManager.generic("Sync correlation rule: " + rule);
-            }
+            infoResultManager.printCorrelationRules(syncopeTO.getSyncCorrelationRules());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void taskJobs() {
         try {
-            for (final String job : syncopeTO.getTaskJobs()) {
-                infoResultManager.generic("Task job: " + job);
-            }
+            infoResultManager.printJobs(syncopeTO.getTaskJobs());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void validators() {
         try {
-            for (final String validator : syncopeTO.getValidators()) {
-                infoResultManager.generic("Validator: " + validator);
-            }
+            infoResultManager.printValidators(syncopeTO.getValidators());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void passwordGenerators() {
         try {
-            infoResultManager.generic(
-                    "Password generator class: " + syncopeTO.getPasswordGenerator());
+            infoResultManager.printPasswordGenerator(syncopeTO.getPasswordGenerator());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 
     public void virAttrCache() {
         try {
-            infoResultManager.generic(
-                    "Virtual attribute cache class: " + syncopeTO.getVirAttrCache());
+            infoResultManager.printVirtualAttributeCacheClass(syncopeTO.getVirAttrCache());
         } catch (final Exception ex) {
-            infoResultManager.generic(ex.getMessage());
+            infoResultManager.genericError(ex.getMessage());
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/InfoResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/InfoResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/InfoResultManager.java
index 237af64..6ea04f7 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/InfoResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/info/InfoResultManager.java
@@ -18,8 +18,134 @@
  */
 package org.apache.syncope.client.cli.commands.info;
 
+import java.util.List;
 import org.apache.syncope.client.cli.commands.CommonsResultManager;
 
 public class InfoResultManager extends CommonsResultManager {
 
+    public void printVersion(final String version) {
+        genericMessage(" - Syncope version: " + version);
+    }
+
+    public void printPwdResetAllowed(final boolean pwdResetAllowed) {
+        genericMessage("Password reset allowed: " + pwdResetAllowed);
+    }
+
+    public void printPwdResetRequiringSecurityQuestions(final boolean pwdResetRequiringSecurityQuestions) {
+        genericMessage("Password reset requiring security question: " + pwdResetRequiringSecurityQuestions);
+    }
+
+    public void printSelfRegistrationAllowed(final boolean selfRegAllowed) {
+        genericMessage("Self registration allowed: " + selfRegAllowed);
+    }
+
+    public void printProvisioningManager(final String anyObjectProvisioningManager,
+            final String getUserProvisioningManager,
+            final String getGroupProvisioningManager) {
+        genericMessage(
+                "Any object provisioning manager class: " + anyObjectProvisioningManager,
+                "User provisioning manager class: " + getUserProvisioningManager,
+                "Group provisioning manager class: " + getGroupProvisioningManager);
+    }
+
+    public void printWorkflowAdapter(final String anyObjectWorkflowAdapter,
+            final String userWorkflowAdapter,
+            final String groupWorkflowAdapter) {
+        genericMessage(
+                "Any object workflow adapter class: " + anyObjectWorkflowAdapter,
+                "User       workflow adapter class: " + userWorkflowAdapter,
+                "Group      workflow adapter class: " + groupWorkflowAdapter);
+    }
+
+    public void printAccountRules(final List<String> rules) {
+        for (final String accountRule : rules) {
+            genericMessage("Account rule: " + accountRule);
+        }
+    }
+
+    public void printConnidLocations(final List<String> locations) {
+        for (final String location : locations) {
+            genericMessage("ConnId location: " + location);
+        }
+    }
+
+    public void printLogicActions(final List<String> actions) {
+        for (final String action : actions) {
+            genericMessage("Logic action: " + action);
+        }
+    }
+
+    public void printMailTemplates(final List<String> mailTemplates) {
+        for (final String template : mailTemplates) {
+            genericMessage("Mail template: " + template);
+        }
+    }
+
+    public void printMappingItemTransformers(final List<String> transformers) {
+        for (final String tranformer : transformers) {
+            genericMessage("Mapping item tranformer: " + tranformer);
+        }
+    }
+
+    public void printPasswordRules(final List<String> rules) {
+        for (final String rule : rules) {
+            genericMessage("Password rule: " + rule);
+        }
+    }
+
+    public void printCorrelationRules(final List<String> rules) {
+        for (final String rule : rules) {
+            genericMessage("Correlation rule: " + rule);
+        }
+    }
+
+    public void printPropagationActions(final List<String> actions) {
+        for (final String action : actions) {
+            genericMessage("Propagation action: " + action);
+        }
+    }
+
+    public void printPushActions(final List<String> actions) {
+        for (final String action : actions) {
+            genericMessage("Push action: " + action);
+        }
+    }
+
+    public void printSyncActions(final List<String> actions) {
+        for (final String action : actions) {
+            genericMessage("Sync action: " + action);
+        }
+    }
+
+    public void printCorrelationActions(final List<String> actions) {
+        for (final String action : actions) {
+            genericMessage("Push correlation rule: " + action);
+        }
+    }
+
+    public void printReportlets(final List<String> reportlets) {
+        for (final String reportlet : reportlets) {
+            genericMessage("Reportlet: " + reportlet);
+        }
+    }
+
+    public void printJobs(final List<String> jobs) {
+        for (final String job : jobs) {
+            genericMessage("Task job: " + job);
+        }
+    }
+
+    public void printValidators(final List<String> validators) {
+        for (final String validator : validators) {
+            genericMessage("Validator: " + validator);
+        }
+    }
+
+    public void printPasswordGenerator(final String passwordGenerator) {
+        genericMessage("Password generator class: " + passwordGenerator);
+    }
+    
+    public void printVirtualAttributeCacheClass(final String virAttrCache) {
+        genericMessage("Virtual attribute cache class: " + virAttrCache);
+    }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallCommand.java
index 7ebd554..b9f4c83 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallCommand.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.client.cli.commands.install;
 
+import java.io.FileNotFoundException;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.syncope.client.cli.Command;
 import org.apache.syncope.client.cli.Input;
@@ -26,6 +27,8 @@ import org.apache.syncope.client.cli.commands.AbstractCommand;
 @Command(name = "install")
 public class InstallCommand extends AbstractCommand {
 
+    private final InstallResultManager installResultManager = new InstallResultManager();
+
     private static final String HELP_MESSAGE = "Usage: install [options]\n"
             + "  Options:\n"
             + "    --help \n"
@@ -39,13 +42,18 @@ public class InstallCommand extends AbstractCommand {
 
         switch (Options.fromName(input.getOption())) {
             case INSTALL:
-                new InstallSetup().setup();
+                try {
+                    new InstallSetup().setup();
+                } catch (final FileNotFoundException | IllegalAccessException ex) {
+                    installResultManager.genericError(ex.getMessage());
+                    break;
+                }
                 break;
             case HELP:
                 System.out.println(HELP_MESSAGE);
                 break;
             default:
-                new InstallResultManager().defaultError(input.getOption(), HELP_MESSAGE);
+                installResultManager.defaultError(input.getOption(), HELP_MESSAGE);
         }
     }
 
@@ -83,5 +91,4 @@ public class InstallCommand extends AbstractCommand {
             return optionToReturn;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallResultManager.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallResultManager.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallResultManager.java
index 8b96ae0..39837bf 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallResultManager.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallResultManager.java
@@ -26,6 +26,16 @@ import org.apache.syncope.client.cli.commands.CommonsResultManager;
 
 public class InstallResultManager extends CommonsResultManager {
 
+    public void printWelcome() {
+        System.out.println("");
+        System.out.println("###############################################");
+        System.out.println("#                                             #");
+        System.out.println("# Welcome to Syncope CLI installation process #");
+        System.out.println("#                                             #");
+        System.out.println("###############################################");
+        System.out.println("");
+    }
+
     public void installationSuccessful(final String version) {
         System.out.println("Installation parameters checked on Syncope core version: " + version);
         System.out.println("");

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallSetup.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallSetup.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallSetup.java
index 4d9a0ff..7e1eaec 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallSetup.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/install/InstallSetup.java
@@ -44,23 +44,18 @@ public class InstallSetup {
 
     private String syncopeServerRestContext = "/syncope/rest/";
 
-    public InstallSetup() {
-    }
-
-    public void setup() {
-        System.out.println("");
-        System.out.println("###############################################");
-        System.out.println("#                                             #");
-        System.out.println("# Welcome to Syncope CLI installation process #");
-        System.out.println("#                                             #");
-        System.out.println("###############################################");
-        System.out.println("");
+    public void setup() throws FileNotFoundException, IllegalAccessException {
+        installResultManager.printWelcome();
 
         System.out.println("Path to config files of Syncope CLI client will be: "
                 + InstallConfigFileTemplate.DIR_PATH);
 
+        if (!FileSystemUtils.exists(InstallConfigFileTemplate.DIR_PATH)) {
+            throw new FileNotFoundException("Directory: " + InstallConfigFileTemplate.DIR_PATH + " does not exists!");
+        }
+
         if (!FileSystemUtils.canWrite(InstallConfigFileTemplate.DIR_PATH)) {
-            System.out.println("Permission denied on " + InstallConfigFileTemplate.DIR_PATH);
+            throw new IllegalAccessException("Permission denied on " + InstallConfigFileTemplate.DIR_PATH);
         }
         System.out.println("- File system permission checked");
         System.out.println("");
@@ -153,7 +148,6 @@ public class InstallSetup {
         scanIn.close();
 
         final JasyptUtils jasyptUtils = JasyptUtils.getJasyptUtils();
-
         try {
             FileSystemUtils.createNewDirectory(InstallConfigFileTemplate.DIR_PATH);
             final String contentCliPropertiesFile = InstallConfigFileTemplate.createFile(

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCommand.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCommand.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCommand.java
index 134c294..4d2a55e 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCommand.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCommand.java
@@ -51,7 +51,7 @@ public class LoggerCommand extends AbstractCommand {
 
         switch (LoggerOptions.fromName(input.getOption())) {
             case LIST:
-                new LoggerList().list();
+                new LoggerList(input).list();
                 break;
             case READ:
                 new LoggerRead(input).read();
@@ -123,5 +123,4 @@ public class LoggerCommand extends AbstractCommand {
             return options;
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCreate.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCreate.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCreate.java
index 40b5e1b..2216295 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCreate.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerCreate.java
@@ -65,5 +65,4 @@ public class LoggerCreate extends AbstractLoggerCommand {
             loggerResultManager.commandOptionError(CREATE_HELP_MESSAGE);
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/6d368c8b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerDelete.java
----------------------------------------------------------------------
diff --git a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerDelete.java b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerDelete.java
index 8bdb3ab..88c30c5 100644
--- a/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerDelete.java
+++ b/client/cli/src/main/java/org/apache/syncope/client/cli/commands/logger/LoggerDelete.java
@@ -42,7 +42,7 @@ public class LoggerDelete extends AbstractLoggerCommand {
                     if (ex.getMessage().startsWith("NotFound")) {
                         loggerResultManager.notFoundError("Logger", parameter);
                     } else {
-                        loggerResultManager.generic(ex.getMessage());
+                        loggerResultManager.genericError(ex.getMessage());
                     }
                 }
             }
@@ -50,5 +50,4 @@ public class LoggerDelete extends AbstractLoggerCommand {
             loggerResultManager.commandOptionError(DELETE_HELP_MESSAGE);
         }
     }
-
 }