From 5cdad30b99d8c115f6b50c63bb2ecceefdd33937 Mon Sep 17 00:00:00 2001 From: Fraser Tweedale Date: Wed, 10 Jun 2015 03:02:35 -0400 Subject: Lightweight CAs: add ca-authority CLI Add CLI commands for creating, listing and showing lightweight CAs. Part of: https://fedorahosted.org/pki/ticket/1213 --- .../cmstools/authority/AuthorityFindCLI.java | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java (limited to 'base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java') diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java new file mode 100644 index 000000000..c1aa99fc6 --- /dev/null +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java @@ -0,0 +1,62 @@ +package com.netscape.cmstools.authority; + +import java.util.Arrays; +import java.util.List; + +import org.apache.commons.cli.CommandLine; +import org.apache.commons.cli.ParseException; + +import com.netscape.certsrv.authority.AuthorityData; +import com.netscape.cmstools.cli.CLI; +import com.netscape.cmstools.cli.MainCLI; + +public class AuthorityFindCLI extends CLI { + + public AuthorityCLI authorityCLI; + + public AuthorityFindCLI(AuthorityCLI authorityCLI) { + super("find", "Find CAs", authorityCLI); + this.authorityCLI = authorityCLI; + } + + public void printHelp() { + formatter.printHelp(getFullName(), 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); + } + + @SuppressWarnings("unused") + CommandLine cmd = null; + + try { + cmd = parser.parse(options, args); + } catch (ParseException e) { + System.err.println("Error: " + e.getMessage()); + printHelp(); + System.exit(-1); + } + + List datas = authorityCLI.authorityClient.listCAs(); + + MainCLI.printMessage(datas.size() + " entries matched"); + if (datas.size() == 0) return; + + boolean first = true; + for (AuthorityData data : datas) { + if (first) + first = false; + else + System.out.println(); + AuthorityCLI.printAuthorityData(data); + } + + MainCLI.printMessage("Number of entries returned " + datas.size()); + } + +} -- cgit