summaryrefslogtreecommitdiffstats
path: root/base/java-tools/src/com/netscape/cmstools/system
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/system
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/system')
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/KRAConnectorAddCLI.java21
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/KRAConnectorRemoveCLI.java25
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/SecurityDomainGetInstallTokenCLI.java28
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/SecurityDomainShowCLI.java21
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/TPSConnectorAddCLI.java25
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/TPSConnectorFindCLI.java25
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/TPSConnectorModCLI.java27
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/TPSConnectorRemoveCLI.java25
-rw-r--r--base/java-tools/src/com/netscape/cmstools/system/TPSConnectorShowCLI.java33
9 files changed, 158 insertions, 72 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorAddCLI.java b/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorAddCLI.java
index d3ddd56f5..aa92bee34 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorAddCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorAddCLI.java
@@ -18,6 +18,7 @@
package com.netscape.cmstools.system;
import java.io.FileInputStream;
+import java.util.Arrays;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;
@@ -42,10 +43,16 @@ public class KRAConnectorAddCLI extends CLI {
}
public void printHelp() {
- formatter.printHelp(getFullName() + " <File Name>", options);
+ formatter.printHelp(getFullName() + " <File Name> [OPTIONS...]", options);
}
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;
@@ -57,21 +64,15 @@ public class KRAConnectorAddCLI extends CLI {
System.exit(-1);
}
- if (cmd.hasOption("help")) {
- // Display usage
- printHelp();
- System.exit(0);
- }
-
- String[] cLineArgs = cmd.getArgs();
+ String[] cmdArgs = cmd.getArgs();
- if (cLineArgs.length < 1) {
+ if (cmdArgs.length < 1) {
System.err.println("Error: No file name specified.");
printHelp();
System.exit(-1);
}
- FileInputStream fis = new FileInputStream(cLineArgs[0].trim());
+ FileInputStream fis = new FileInputStream(cmdArgs[0].trim());
JAXBContext context = JAXBContext.newInstance(KRAConnectorInfo.class);
Unmarshaller unmarshaller = context.createUnmarshaller();
diff --git a/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorRemoveCLI.java b/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorRemoveCLI.java
index ccd2cae3a..5f0f63b1a 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorRemoveCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/KRAConnectorRemoveCLI.java
@@ -19,6 +19,8 @@ package com.netscape.cmstools.system;
import java.util.Arrays;
+import org.apache.commons.cli.CommandLine;
+
import com.netscape.cmstools.cli.CLI;
import com.netscape.cmstools.cli.MainCLI;
@@ -35,21 +37,34 @@ public class KRAConnectorRemoveCLI extends CLI {
}
public void printHelp() {
- formatter.printHelp(getFullName() + " <KRA Host> <KRA Port>", options);
+ formatter.printHelp(getFullName() + " <KRA Host> <KRA Port> [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 != 2) {
+ 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 != 2) {
+ System.err.println("Error: Incorrect number of arguments specified.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String kraHost = args[0];
diff --git a/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainGetInstallTokenCLI.java b/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainGetInstallTokenCLI.java
index d7fb4b12e..86e722aaa 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainGetInstallTokenCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainGetInstallTokenCLI.java
@@ -38,21 +38,15 @@ public class SecurityDomainGetInstallTokenCLI extends CLI {
public SecurityDomainGetInstallTokenCLI(SecurityDomainCLI securityDomainCLI) {
super("get-install-token", "Get install token", securityDomainCLI);
this.securityDomainCLI = securityDomainCLI;
+
+ createOptions();
}
public void printHelp() {
- formatter.printHelp(getFullName() + " [OPTIONS...]", options);
+ formatter.printHelp(getFullName() + " --subsystem <subsystem> [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, "hostname", true, "Hostname");
option.setArgName("hostname");
options.addOption(option);
@@ -61,6 +55,15 @@ public class SecurityDomainGetInstallTokenCLI extends CLI {
option.setArgName("subsystem");
option.setRequired(true);
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;
@@ -70,14 +73,15 @@ public class SecurityDomainGetInstallTokenCLI 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 hostname = cmd.getOptionValue("hostname");
diff --git a/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainShowCLI.java b/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainShowCLI.java
index a23bc52a5..dd6c92033 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainShowCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/SecurityDomainShowCLI.java
@@ -18,6 +18,8 @@
package com.netscape.cmstools.system;
+import java.util.Arrays;
+
import org.apache.commons.cli.CommandLine;
import com.netscape.certsrv.system.DomainInfo;
@@ -36,10 +38,16 @@ public class SecurityDomainShowCLI extends CLI {
}
public void printHelp() {
- formatter.printHelp(getFullName(), options);
+ formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
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;
@@ -49,20 +57,15 @@ public class SecurityDomainShowCLI 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);
}
DomainInfo domain = securityDomainCLI.securityDomainClient.getDomainInfo();
diff --git a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorAddCLI.java b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorAddCLI.java
index fdf9ce817..ceeccdfef 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorAddCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorAddCLI.java
@@ -17,6 +17,8 @@
// --- END COPYRIGHT BLOCK ---
package com.netscape.cmstools.system;
+import java.util.Arrays;
+
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
@@ -32,13 +34,15 @@ public class TPSConnectorAddCLI extends CLI {
public TPSConnectorAddCLI(TPSConnectorCLI tpsConnectorCLI) {
super("add", "Add TPS connector to TKS", tpsConnectorCLI);
this.tpsConnectorCLI = tpsConnectorCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
+ public void createOptions() {
Option option = new Option(null, "host", true, "TPS host");
option.setArgName("host");
options.addOption(option);
@@ -46,6 +50,15 @@ public class TPSConnectorAddCLI extends CLI {
option = new Option(null, "port", true, "TPS port");
option.setArgName("port");
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;
@@ -55,13 +68,15 @@ public class TPSConnectorAddCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
+ System.exit(-1);
}
- if (cmd.hasOption("help")) {
- // Display usage
+ String[] cmdArgs = cmd.getArgs();
+
+ if (cmdArgs.length != 0) {
+ System.err.println("Error: Too many arguments specified.");
printHelp();
- System.exit(0);
+ System.exit(-1);
}
String tpsHost = cmd.getOptionValue("host");
diff --git a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorFindCLI.java b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorFindCLI.java
index d69232bbd..bdff05624 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorFindCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorFindCLI.java
@@ -17,6 +17,7 @@
// --- END COPYRIGHT BLOCK ---
package com.netscape.cmstools.system;
+import java.util.Arrays;
import java.util.Collection;
import org.apache.commons.cli.CommandLine;
@@ -37,14 +38,15 @@ public class TPSConnectorFindCLI extends CLI {
public TPSConnectorFindCLI(TPSConnectorCLI tpsConnectorCLI) {
super("find", "Find TPS connectors on TKS", tpsConnectorCLI);
this.tpsConnectorCLI = tpsConnectorCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " [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);
@@ -52,6 +54,15 @@ public class TPSConnectorFindCLI 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;
@@ -61,13 +72,15 @@ public class TPSConnectorFindCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
+ System.exit(-1);
}
- if (cmd.hasOption("help")) {
- // Display usage
+ String[] cmdArgs = cmd.getArgs();
+
+ if (cmdArgs.length != 0) {
+ System.err.println("Error: Too many arguments specified.");
printHelp();
- System.exit(0);
+ System.exit(-1);
}
String s = cmd.getOptionValue("start");
diff --git a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorModCLI.java b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorModCLI.java
index e098f5b98..f9de2ab98 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorModCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorModCLI.java
@@ -1,5 +1,7 @@
package com.netscape.cmstools.system;
+import java.util.Arrays;
+
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
@@ -13,13 +15,15 @@ public class TPSConnectorModCLI extends CLI {
public TPSConnectorModCLI(TPSConnectorCLI tpsConnectorCLI) {
super("mod", "Modify TPS connector on TKS", tpsConnectorCLI);
this.tpsConnectorCLI = tpsConnectorCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " <Connector ID> [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
+ public void createOptions() {
Option option = new Option(null, "host", true, "TPS host");
option.setArgName("host");
options.addOption(option);
@@ -27,6 +31,15 @@ public class TPSConnectorModCLI extends CLI {
option = new Option(null, "port", true, "TPS port");
option.setArgName("port");
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;
@@ -36,19 +49,15 @@ public class TPSConnectorModCLI 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 != 1) {
+ System.err.println("Error: No Connector ID specified.");
printHelp();
- System.exit(1);
+ System.exit(-1);
}
String connID = cmdArgs[0];
diff --git a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorRemoveCLI.java b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorRemoveCLI.java
index d4408141c..e8355de2e 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorRemoveCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorRemoveCLI.java
@@ -17,6 +17,8 @@
// --- END COPYRIGHT BLOCK ---
package com.netscape.cmstools.system;
+import java.util.Arrays;
+
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
@@ -32,13 +34,15 @@ public class TPSConnectorRemoveCLI extends CLI {
public TPSConnectorRemoveCLI(TPSConnectorCLI tpsConnectorCLI) {
super("del", "Remove TPS connector from TKS", tpsConnectorCLI);
this.tpsConnectorCLI = tpsConnectorCLI;
+
+ createOptions();
}
public void printHelp() {
formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
- public void execute(String[] args) throws Exception {
+ public void createOptions() {
Option option = new Option(null, "host", true, "TPS host");
option.setArgName("host");
options.addOption(option);
@@ -46,6 +50,15 @@ public class TPSConnectorRemoveCLI extends CLI {
option = new Option(null, "port", true, "TPS port");
option.setArgName("port");
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;
@@ -55,13 +68,15 @@ public class TPSConnectorRemoveCLI extends CLI {
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
printHelp();
- System.exit(1);
+ System.exit(-1);
}
- if (cmd.hasOption("help")) {
- // Display usage
+ String[] cmdArgs = cmd.getArgs();
+
+ if (cmdArgs.length != 0) {
+ System.err.println("Error: Too many arguments specified.");
printHelp();
- System.exit(0);
+ System.exit(-1);
}
String tpsHost = cmd.getOptionValue("host");
diff --git a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorShowCLI.java b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorShowCLI.java
index 03a56062c..2c2cb182c 100644
--- a/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorShowCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/system/TPSConnectorShowCLI.java
@@ -36,21 +36,15 @@ public class TPSConnectorShowCLI extends CLI {
public TPSConnectorShowCLI(TPSConnectorCLI tpsConnectorCLI) {
super("show", "Show TPS connector details on TKS", tpsConnectorCLI);
this.tpsConnectorCLI = tpsConnectorCLI;
+
+ createOptions();
}
public void printHelp() {
- formatter.printHelp(getFullName() + " [OPTIONS...]", options);
+ formatter.printHelp(getFullName() + " --host <host> [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, "host", true, "TPS host");
option.setArgName("host");
option.setRequired(true);
@@ -59,6 +53,15 @@ public class TPSConnectorShowCLI extends CLI {
option = new Option(null, "port", true, "TPS port");
option.setArgName("port");
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;
@@ -68,7 +71,15 @@ public class TPSConnectorShowCLI 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);
}
String tpsHost = cmd.getOptionValue("host");