summaryrefslogtreecommitdiffstats
path: root/base/java-tools/src/com/netscape/cmstools/logging
diff options
context:
space:
mode:
authorMatthew Harmsen <mharmsen@redhat.com>2014-04-25 19:55:35 -0700
committerMatthew Harmsen <mharmsen@redhat.com>2014-04-29 14:19:36 -0700
commit7b6b60b7d8d26799ea1bda48e6e51fa05854c80e (patch)
treee51a0d515e8a9a2b9f80dee491fca5217054adf5 /base/java-tools/src/com/netscape/cmstools/logging
parent05fea2520ae50d74f18017b26f5d58936e29af07 (diff)
downloadpki-7b6b60b7d8d26799ea1bda48e6e51fa05854c80e.tar.gz
pki-7b6b60b7d8d26799ea1bda48e6e51fa05854c80e.tar.xz
pki-7b6b60b7d8d26799ea1bda48e6e51fa05854c80e.zip
Fixed issue by streamlining code to be more consistent.
* PKI TRAC Ticket #843 - Incorrect CLI argument parsing
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/logging')
-rw-r--r--base/java-tools/src/com/netscape/cmstools/logging/ActivityFindCLI.java23
-rw-r--r--base/java-tools/src/com/netscape/cmstools/logging/ActivityShowCLI.java25
-rw-r--r--base/java-tools/src/com/netscape/cmstools/logging/AuditModifyCLI.java28
-rw-r--r--base/java-tools/src/com/netscape/cmstools/logging/AuditShowCLI.java28
4 files changed, 67 insertions, 37 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/logging/ActivityFindCLI.java b/base/java-tools/src/com/netscape/cmstools/logging/ActivityFindCLI.java
index 705c7b764..8020b8464 100644
--- a/base/java-tools/src/com/netscape/cmstools/logging/ActivityFindCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/logging/ActivityFindCLI.java
@@ -18,6 +18,7 @@
package com.netscape.cmstools.logging;
+import java.util.Arrays;
import java.util.Collection;
import org.apache.commons.cli.CommandLine;
@@ -38,14 +39,15 @@ public class ActivityFindCLI extends CLI {
public ActivityFindCLI(ActivityCLI activityCLI) {
super("find", "Find activities", activityCLI);
this.activityCLI = activityCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " [FILTER] [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
-
+ public void createOptions() {
Option option = new Option(null, "start", true, "Page start");
option.setArgName("start");
options.addOption(option);
@@ -53,6 +55,15 @@ public class ActivityFindCLI extends CLI {
option = new Option(null, "size", true, "Page size");
option.setArgName("size");
options.addOption(option);
+ }
+
+ public void execute(String[] args) throws Exception {
+ // Always check for "--help" prior to parsing
+ if (Arrays.asList(args).contains("--help")) {
+ // Display usage
+ printHelp();
+ System.exit(0);
+ }
CommandLine cmd = null;
@@ -62,13 +73,7 @@ public class ActivityFindCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
- }
-
- if (cmd.hasOption("help")) {
- // Display usage
- printHelp();
- System.exit(0);
+ System.exit(-1);
}
String[] cmdArgs = cmd.getArgs();
diff --git a/base/java-tools/src/com/netscape/cmstools/logging/ActivityShowCLI.java b/base/java-tools/src/com/netscape/cmstools/logging/ActivityShowCLI.java
index 091cf361c..ea0d69fec 100644
--- a/base/java-tools/src/com/netscape/cmstools/logging/ActivityShowCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/logging/ActivityShowCLI.java
@@ -20,6 +20,8 @@ package com.netscape.cmstools.logging;
import java.util.Arrays;
+import org.apache.commons.cli.CommandLine;
+
import com.netscape.certsrv.logging.ActivityData;
import com.netscape.cmstools.cli.CLI;
import com.netscape.cmstools.cli.MainCLI;
@@ -37,21 +39,34 @@ public class ActivityShowCLI extends CLI {
}
public void printHelp() {
- formatter.printHelp(getFullName() + " <Activity ID>", options);
+ formatter.printHelp(getFullName() + " <Activity 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 Activity ID specified.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String activityID = args[0];
diff --git a/base/java-tools/src/com/netscape/cmstools/logging/AuditModifyCLI.java b/base/java-tools/src/com/netscape/cmstools/logging/AuditModifyCLI.java
index 26411d11c..a69eeb52a 100644
--- a/base/java-tools/src/com/netscape/cmstools/logging/AuditModifyCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/logging/AuditModifyCLI.java
@@ -43,21 +43,15 @@ public class AuditModifyCLI extends CLI {
public AuditModifyCLI(AuditCLI auditCLI) {
super("mod", "Modify audit configuration", auditCLI);
this.auditCLI = auditCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
-
- // Check for "--help" prior to parsing due to required option
- if (Arrays.asList(args).contains("--help")) {
- // Display usage
- printHelp();
- System.exit(0);
- }
-
+ public void createOptions() {
Option option = new Option(null, "action", true, "Action: update (default), enable, disable.");
option.setArgName("action");
options.addOption(option);
@@ -69,6 +63,15 @@ public class AuditModifyCLI extends CLI {
option = new Option(null, "output", true, "Output file to store audit configuration.");
option.setArgName("file");
options.addOption(option);
+ }
+
+ public void execute(String[] args) throws Exception {
+ // Always check for "--help" prior to parsing
+ if (Arrays.asList(args).contains("--help")) {
+ // Display usage
+ printHelp();
+ System.exit(0);
+ }
CommandLine cmd = null;
@@ -78,14 +81,15 @@ public class AuditModifyCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String[] cmdArgs = cmd.getArgs();
if (cmdArgs.length != 0) {
+ System.err.println("Error: Too many arguments specified.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String action = cmd.getOptionValue("action", "update");
@@ -99,7 +103,7 @@ public class AuditModifyCLI extends CLI {
if (input == null) {
System.err.println("Error: Input file is required.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
try (BufferedReader in = new BufferedReader(new FileReader(input));
diff --git a/base/java-tools/src/com/netscape/cmstools/logging/AuditShowCLI.java b/base/java-tools/src/com/netscape/cmstools/logging/AuditShowCLI.java
index f82510e42..34f708c72 100644
--- a/base/java-tools/src/com/netscape/cmstools/logging/AuditShowCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/logging/AuditShowCLI.java
@@ -20,6 +20,7 @@ package com.netscape.cmstools.logging;
import java.io.FileWriter;
import java.io.PrintWriter;
+import java.util.Arrays;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
@@ -38,17 +39,27 @@ public class AuditShowCLI extends CLI {
public AuditShowCLI(AuditCLI auditCLI) {
super("show", "Show audit configuration", auditCLI);
this.auditCLI = auditCLI;
+
+ createOptions();
}
public void printHelp() {
- formatter.printHelp(getFullName(), options);
+ formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
-
+ public void createOptions() {
Option option = new Option(null, "output", true, "Output file to store audit configuration.");
option.setArgName("file");
options.addOption(option);
+ }
+
+ public void execute(String[] args) throws Exception {
+ // Always check for "--help" prior to parsing
+ if (Arrays.asList(args).contains("--help")) {
+ // Display usage
+ printHelp();
+ System.exit(0);
+ }
CommandLine cmd = null;
@@ -58,20 +69,15 @@ public class AuditShowCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
- }
-
- if (cmd.hasOption("help")) {
- // Display usage
- printHelp();
- System.exit(0);
+ System.exit(-1);
}
String[] cmdArgs = cmd.getArgs();
if (cmdArgs.length != 0) {
+ System.err.println("Error: Too many arguments specified.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String output = cmd.getOptionValue("output");