summaryrefslogtreecommitdiffstats
path: root/base/java-tools/src/com/netscape/cmstools/tps
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2013-09-24 10:08:48 -0400
committerEndi S. Dewata <edewata@redhat.com>2013-10-01 19:25:39 -0400
commite339952dfad45bc0ba1768a9386817eadd49b9dc (patch)
tree9654dfcee299337c23d3536e913478f8c3dabcaa /base/java-tools/src/com/netscape/cmstools/tps
parenta3ac3ef0ca5e720a4cd5b17e9181124c17d17ea7 (diff)
downloadpki-e339952dfad45bc0ba1768a9386817eadd49b9dc.tar.gz
pki-e339952dfad45bc0ba1768a9386817eadd49b9dc.tar.xz
pki-e339952dfad45bc0ba1768a9386817eadd49b9dc.zip
Refactored TPS configuration resource.
The REST interface for TPS configuration has been modified to provide access to TPS general configuration as originally designed. The configuration database has been modified such that it can be reused by other configuration resources. Ticket #652
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/tps')
-rw-r--r--base/java-tools/src/com/netscape/cmstools/tps/config/ConfigCLI.java42
-rw-r--r--base/java-tools/src/com/netscape/cmstools/tps/config/ConfigFindCLI.java86
-rw-r--r--base/java-tools/src/com/netscape/cmstools/tps/config/ConfigModifyCLI.java15
-rw-r--r--base/java-tools/src/com/netscape/cmstools/tps/config/ConfigShowCLI.java13
4 files changed, 22 insertions, 134 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigCLI.java
index 9d913517e..584cf81af 100644
--- a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigCLI.java
@@ -19,7 +19,7 @@
package com.netscape.cmstools.tps.config;
import java.io.IOException;
-import java.util.Arrays;
+import java.util.Map;
import org.jboss.resteasy.plugins.providers.atom.Link;
@@ -37,7 +37,6 @@ public class ConfigCLI extends CLI {
public ConfigCLI(CLI parent) {
super("config", "Configuration management commands", parent);
- addModule(new ConfigFindCLI(this));
addModule(new ConfigModifyCLI(this));
addModule(new ConfigShowCLI(this));
}
@@ -47,41 +46,18 @@ public class ConfigCLI extends CLI {
client = parent.getClient();
configClient = (ConfigClient)parent.getClient("config");
- if (args.length == 0) {
- printHelp();
- System.exit(1);
- }
-
- String command = args[0];
- String[] commandArgs = Arrays.copyOfRange(args, 1, args.length);
-
- if (command == null) {
- printHelp();
- System.exit(1);
- }
-
- CLI module = getModule(command);
- if (module != null) {
- module.execute(commandArgs);
-
- } else {
- System.err.println("Error: Invalid command \"" + command + "\"");
- printHelp();
- System.exit(1);
- }
+ super.execute(args);
}
- public static void printConfigData(ConfigData configData, boolean showProperties) throws IOException {
+ public static void printConfigData(ConfigData configData) throws IOException {
- System.out.println(" Config ID: " + configData.getID());
- System.out.println(" Display Name: " + configData.getDisplayName());
+ if (configData.getStatus() != null) System.out.println(" Status: " + configData.getStatus());
- if (showProperties) {
- System.out.println(" Properties:");
- for (String name : configData.getPropertyNames()) {
- String value = configData.getProperty(name);
- System.out.println(" " + name + ": " + value);
- }
+ System.out.println(" Properties:");
+ Map<String, String> properties = configData.getProperties();
+ for (String name : properties.keySet()) {
+ String value = properties.get(name);
+ System.out.println(" " + name + ": " + value);
}
Link link = configData.getLink();
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigFindCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigFindCLI.java
deleted file mode 100644
index c7ab18738..000000000
--- a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigFindCLI.java
+++ /dev/null
@@ -1,86 +0,0 @@
-// --- BEGIN COPYRIGHT BLOCK ---
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; version 2 of the License.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this program; if not, write to the Free Software Foundation, Inc.,
-// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-//
-// (C) 2013 Red Hat, Inc.
-// All rights reserved.
-// --- END COPYRIGHT BLOCK ---
-
-package com.netscape.cmstools.tps.config;
-
-import java.util.Collection;
-
-import org.apache.commons.cli.CommandLine;
-
-import com.netscape.certsrv.tps.config.ConfigCollection;
-import com.netscape.certsrv.tps.config.ConfigData;
-import com.netscape.cmstools.cli.CLI;
-import com.netscape.cmstools.cli.MainCLI;
-
-/**
- * @author Endi S. Dewata
- */
-public class ConfigFindCLI extends CLI {
-
- public ConfigCLI configCLI;
-
- public ConfigFindCLI(ConfigCLI configCLI) {
- super("find", "Find configurations", configCLI);
- this.configCLI = configCLI;
- }
-
- public void printHelp() {
- formatter.printHelp(getFullName(), options);
- }
-
- public void execute(String[] args) throws Exception {
-
- 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 != 0) {
- printHelp();
- System.exit(1);
- }
-
- ConfigCollection result = configCLI.configClient.findConfigs();
-
- Collection<ConfigData> entries = result.getConfigs();
-
- MainCLI.printMessage(entries.size() + " entries matched");
- boolean first = true;
-
- for (ConfigData configData : entries) {
-
- if (first) {
- first = false;
- } else {
- System.out.println();
- }
-
- ConfigCLI.printConfigData(configData, false);
- }
-
- MainCLI.printMessage("Number of entries returned " + entries.size());
- }
-}
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigModifyCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigModifyCLI.java
index 3344a8c9e..fb7e2f09f 100644
--- a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigModifyCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigModifyCLI.java
@@ -39,22 +39,22 @@ public class ConfigModifyCLI extends CLI {
public ConfigCLI configCLI;
public ConfigModifyCLI(ConfigCLI configCLI) {
- super("mod", "Modify configuration", configCLI);
+ super("mod", "Modify general properties", configCLI);
this.configCLI = configCLI;
}
public void printHelp() {
- formatter.printHelp(getFullName() + " <Config ID> [OPTIONS...]", options);
+ formatter.printHelp(getFullName() + " [OPTIONS...]", options);
}
public void execute(String[] args) throws Exception {
- Option option = new Option(null, "input", true, "Input configuration file.");
+ Option option = new Option(null, "input", true, "Input file containing general properties.");
option.setArgName("file");
option.setRequired(true);
options.addOption(option);
- option = new Option(null, "output", true, "Output configuration file.");
+ option = new Option(null, "output", true, "Output file to store general properties.");
option.setArgName("file");
options.addOption(option);
@@ -71,12 +71,11 @@ public class ConfigModifyCLI extends CLI {
String[] cmdArgs = cmd.getArgs();
- if (cmdArgs.length != 1) {
+ if (cmdArgs.length != 0) {
printHelp();
System.exit(1);
}
- String configID = args[0];
String input = cmd.getOptionValue("input");
String output = cmd.getOptionValue("output");
@@ -100,12 +99,12 @@ public class ConfigModifyCLI extends CLI {
configData = ConfigData.valueOf(sw.toString());
}
- configData = configCLI.configClient.updateConfig(configID, configData);
+ configData = configCLI.configClient.updateConfig(configData);
MainCLI.printMessage("Updated configuration");
if (output == null) {
- ConfigCLI.printConfigData(configData, true);
+ ConfigCLI.printConfigData(configData);
} else {
try (PrintWriter out = new PrintWriter(new FileWriter(output))) {
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigShowCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigShowCLI.java
index 77f77c94f..33bc781ac 100644
--- a/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigShowCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/tps/config/ConfigShowCLI.java
@@ -36,17 +36,17 @@ public class ConfigShowCLI extends CLI {
public ConfigCLI configCLI;
public ConfigShowCLI(ConfigCLI configCLI) {
- super("show", "Show configuration", configCLI);
+ super("show", "Show general properties", configCLI);
this.configCLI = configCLI;
}
public void printHelp() {
- formatter.printHelp(getFullName() + " <Config ID>", options);
+ formatter.printHelp(getFullName(), options);
}
public void execute(String[] args) throws Exception {
- Option option = new Option(null, "output", true, "Output file to store config attributes.");
+ Option option = new Option(null, "output", true, "Output file to store general properties.");
option.setArgName("file");
options.addOption(option);
@@ -63,19 +63,18 @@ public class ConfigShowCLI extends CLI {
String[] cmdArgs = cmd.getArgs();
- if (cmdArgs.length != 1) {
+ if (cmdArgs.length != 0) {
printHelp();
System.exit(1);
}
- String configID = cmdArgs[0];
String output = cmd.getOptionValue("output");
- ConfigData configData = configCLI.configClient.getConfig(configID);
+ ConfigData configData = configCLI.configClient.getConfig();
if (output == null) {
MainCLI.printMessage("Configuration");
- ConfigCLI.printConfigData(configData, true);
+ ConfigCLI.printConfigData(configData);
} else {
try (PrintWriter out = new PrintWriter(new FileWriter(output))) {