diff options
author | Endi S. Dewata <edewata@redhat.com> | 2013-09-24 10:11:15 -0400 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2013-10-01 19:26:11 -0400 |
commit | bcf463c6afb042543fec93759c02211f6d5c0a60 (patch) | |
tree | 3bd735490a89f9711a876e752d117267c1e243fb /base/java-tools/src/com/netscape/cmstools/tps | |
parent | 565741cc9aa0e3f1e056c9c79dc1bec35bbbcc92 (diff) | |
download | pki-bcf463c6afb042543fec93759c02211f6d5c0a60.tar.gz pki-bcf463c6afb042543fec93759c02211f6d5c0a60.tar.xz pki-bcf463c6afb042543fec93759c02211f6d5c0a60.zip |
Added TPS connection service implementation.
The implementation of the TPS connection service has been modified to
use the configuration database to read and write the configuration file.
Ticket #652
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/tps')
5 files changed, 52 insertions, 104 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionAddCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionAddCLI.java index bb2beda13..f01823a4a 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionAddCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionAddCLI.java @@ -48,12 +48,7 @@ public class ConnectionAddCLI extends CLI { public void execute(String[] args) throws Exception { - Option option = new Option(null, "status", true, "Status: ENABLED, DISABLED."); - option.setArgName("status"); - option.setRequired(true); - options.addOption(option); - - option = new Option(null, "contents", true, "Input file containing connection attributes."); + Option option = new Option(null, "input", true, "Input file containing connection properties."); option.setArgName("file"); option.setRequired(true); options.addOption(option); @@ -71,37 +66,31 @@ public class ConnectionAddCLI extends CLI { String[] cmdArgs = cmd.getArgs(); - if (cmdArgs.length != 1) { + if (cmdArgs.length != 0) { printHelp(); System.exit(1); } - String connectionID = cmdArgs[0]; - String status = cmd.getOptionValue("status"); - String contents = cmd.getOptionValue("contents"); + String input = cmd.getOptionValue("input"); - ConnectionData connectionData = new ConnectionData(); - connectionData.setID(connectionID); - connectionData.setStatus(status); + ConnectionData connectionData; - if (contents != null) { - try (BufferedReader in = new BufferedReader(new FileReader(contents)); - StringWriter sw = new StringWriter(); - PrintWriter out = new PrintWriter(sw, true)) { + try (BufferedReader in = new BufferedReader(new FileReader(input)); + StringWriter sw = new StringWriter(); + PrintWriter out = new PrintWriter(sw, true)) { - String line; - while ((line = in.readLine()) != null) { - out.println(line); - } - - connectionData.setContents(sw.toString()); + String line; + while ((line = in.readLine()) != null) { + out.println(line); } + + connectionData = ConnectionData.valueOf(sw.toString()); } connectionData = connectionCLI.connectionClient.addConnection(connectionData); - MainCLI.printMessage("Added connection \"" + connectionID + "\""); + MainCLI.printMessage("Added connection \"" + connectionData.getID() + "\""); - ConnectionCLI.printConnectionData(connectionData); + ConnectionCLI.printConnectionData(connectionData, true); } } diff --git a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionCLI.java index 5371dbe9d..1159a2012 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionCLI.java @@ -18,16 +18,13 @@ package com.netscape.cmstools.tps.connection; -import java.io.BufferedReader; import java.io.IOException; -import java.io.StringReader; -import java.util.Arrays; +import java.util.Map; import org.jboss.resteasy.plugins.providers.atom.Link; import com.netscape.certsrv.tps.connection.ConnectionClient; import com.netscape.certsrv.tps.connection.ConnectionData; -import com.netscape.certsrv.tps.connection.ConnectionInfo; import com.netscape.cmstools.cli.CLI; /** @@ -52,51 +49,19 @@ public class ConnectionCLI extends CLI { client = parent.getClient(); connectionClient = (ConnectionClient)parent.getClient("connection"); - 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); - } - } - - public static void printConnectionInfo(ConnectionInfo connectionInfo) { - System.out.println(" Connection ID: " + connectionInfo.getID()); - if (connectionInfo.getStatus() != null) System.out.println(" Status: " + connectionInfo.getStatus()); - - Link link = connectionInfo.getLink(); - if (verbose && link != null) { - System.out.println(" Link: " + link.getHref()); - } + super.execute(args); } - public static void printConnectionData(ConnectionData connectionData) throws IOException { + public static void printConnectionData(ConnectionData connectionData, boolean showProperties) throws IOException { System.out.println(" Connection ID: " + connectionData.getID()); if (connectionData.getStatus() != null) System.out.println(" Status: " + connectionData.getStatus()); - System.out.println(" Contents:"); - String contents = connectionData.getContents(); - if (contents != null) { - BufferedReader in = new BufferedReader(new StringReader(contents)); - String line; - while ((line = in.readLine()) != null) { - System.out.println(" " + line); + if (showProperties) { + System.out.println(" Properties:"); + Map<String, String> properties = connectionData.getProperties(); + for (String name : properties.keySet()) { + String value = properties.get(name); + System.out.println(" " + name + ": " + value); } } diff --git a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionFindCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionFindCLI.java index 9218edee4..6112db4ff 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionFindCLI.java @@ -24,7 +24,7 @@ import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; import com.netscape.certsrv.tps.connection.ConnectionCollection; -import com.netscape.certsrv.tps.connection.ConnectionInfo; +import com.netscape.certsrv.tps.connection.ConnectionData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -35,9 +35,9 @@ public class ConnectionFindCLI extends CLI { public ConnectionCLI connectionCLI; - public ConnectionFindCLI(ConnectionCLI tokenCLI) { - super("find", "Find connections", tokenCLI); - this.connectionCLI = tokenCLI; + public ConnectionFindCLI(ConnectionCLI connectionCLI) { + super("find", "Find connections", connectionCLI); + this.connectionCLI = connectionCLI; } public void printHelp() { @@ -72,13 +72,13 @@ public class ConnectionFindCLI extends CLI { Integer size = s == null ? null : Integer.valueOf(s); ConnectionCollection result = connectionCLI.connectionClient.findConnections(start, size); - Collection<ConnectionInfo> connections = result.getEntries(); + Collection<ConnectionData> connections = result.getEntries(); MainCLI.printMessage(connections.size() + " connection(s) matched"); boolean first = true; - for (ConnectionInfo connectionInfo : connections) { + for (ConnectionData connectionData : connections) { if (first) { first = false; @@ -86,7 +86,7 @@ public class ConnectionFindCLI extends CLI { System.out.println(); } - ConnectionCLI.printConnectionInfo(connectionInfo); + ConnectionCLI.printConnectionData(connectionData, false); } MainCLI.printMessage("Number of entries returned " + connections.size()); diff --git a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionModifyCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionModifyCLI.java index f3e449132..704410daa 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionModifyCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionModifyCLI.java @@ -27,7 +27,6 @@ import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; import com.netscape.certsrv.tps.connection.ConnectionData; -import com.netscape.certsrv.tps.connection.ConnectionModification; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -53,7 +52,7 @@ public class ConnectionModifyCLI extends CLI { option.setArgName("status"); options.addOption(option); - option = new Option(null, "contents", true, "Input file containing connection attributes."); + option = new Option(null, "input", true, "Input file containing connection properties."); option.setArgName("file"); options.addOption(option); @@ -77,31 +76,26 @@ public class ConnectionModifyCLI extends CLI { String connectionID = cmdArgs[0]; String status = cmd.getOptionValue("status"); - String contents = cmd.getOptionValue("contents"); + String input = cmd.getOptionValue("input"); - ConnectionModification connectionModification = new ConnectionModification(); - connectionModification.setID(connectionID); - connectionModification.setStatus(status); + ConnectionData connectionData; - if (contents != null) { - // load contents from file + try (BufferedReader in = new BufferedReader(new FileReader(input)); StringWriter sw = new StringWriter(); - try (BufferedReader in = new BufferedReader(new FileReader(contents)); - PrintWriter out = new PrintWriter(sw, true)) { + PrintWriter out = new PrintWriter(sw, true)) { - String line; - while ((line = in.readLine()) != null) { - out.println(line); - } - - connectionModification.setContents(sw.toString()); + String line; + while ((line = in.readLine()) != null) { + out.println(line); } + + connectionData = ConnectionData.valueOf(sw.toString()); } - ConnectionData connectionData = connectionCLI.connectionClient.modifyConnection(connectionID, connectionModification); + connectionData = connectionCLI.connectionClient.updateConnection(connectionID, connectionData); MainCLI.printMessage("Modified connection \"" + connectionID + "\""); - ConnectionCLI.printConnectionData(connectionData); + ConnectionCLI.printConnectionData(connectionData, true); } } diff --git a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionShowCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionShowCLI.java index 7e660d394..455518e47 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionShowCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/connection/ConnectionShowCLI.java @@ -46,7 +46,7 @@ public class ConnectionShowCLI extends CLI { public void execute(String[] args) throws Exception { - Option option = new Option(null, "contents", true, "Output file to store connection attributes."); + Option option = new Option(null, "output", true, "Output file to store connection properties."); option.setArgName("file"); options.addOption(option); @@ -69,19 +69,19 @@ public class ConnectionShowCLI extends CLI { } String connectionID = args[0]; - String file = cmd.getOptionValue("contents"); + String output = cmd.getOptionValue("output"); ConnectionData connectionData = connectionCLI.connectionClient.getConnection(connectionID); - MainCLI.printMessage("Connection \"" + connectionID + "\""); - ConnectionCLI.printConnectionData(connectionData); + if (output == null) { + MainCLI.printMessage("Connection \"" + connectionID + "\""); + ConnectionCLI.printConnectionData(connectionData, true); - if (file != null) { - // store contents to file - PrintWriter out = new PrintWriter(new FileWriter(file)); - String contents = connectionData.getContents(); - if (contents != null) out.print(contents); - out.close(); + } else { + try (PrintWriter out = new PrintWriter(new FileWriter(output))) { + out.println(connectionData); + } + MainCLI.printMessage("Stored connection \"" + connectionID + "\" into " + output); } } } |