diff options
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java')
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java b/base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java index 95f4d3194..dafebff2c 100644 --- a/base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/user/UserShowCLI.java @@ -20,6 +20,8 @@ package com.netscape.cmstools.user; import java.util.Arrays; +import org.apache.commons.cli.CommandLine; + import com.netscape.certsrv.user.UserData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -37,21 +39,34 @@ public class UserShowCLI extends CLI { } public void printHelp() { - formatter.printHelp(getFullName() + " <User ID>", options); + formatter.printHelp(getFullName() + " <User ID> [OPTIONS...]", options); } public void execute(String[] args) throws Exception { - - // Check for "--help" + // Always check for "--help" prior to parsing if (Arrays.asList(args).contains("--help")) { // Display usage printHelp(); System.exit(0); } - if (args.length != 1) { + CommandLine cmd = null; + + try { + cmd = parser.parse(options, args); + + } catch (Exception e) { + System.err.println("Error: " + e.getMessage()); + printHelp(); + System.exit(-1); + } + + String[] cmdArgs = cmd.getArgs(); + + if (cmdArgs.length != 1) { + System.err.println("Error: No User ID specified."); printHelp(); - System.exit(1); + System.exit(-1); } String userId = args[0]; |