diff options
author | Endi S. Dewata <edewata@redhat.com> | 2017-06-15 04:00:52 +0200 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2017-06-17 00:37:45 +0200 |
commit | 8803f28aca4d0b4b55825d13c29772b87aa0de92 (patch) | |
tree | 6a0f4208eb34e88eb0d4fa97ba0dca33c70306be /base/java-tools/src/com/netscape/cmstools | |
parent | d2e247798a36225880ef6050716cc7576fe2ad7f (diff) | |
download | pki-8803f28aca4d0b4b55825d13c29772b87aa0de92.tar.gz pki-8803f28aca4d0b4b55825d13c29772b87aa0de92.tar.xz pki-8803f28aca4d0b4b55825d13c29772b87aa0de92.zip |
Added search filter for pki ca-authority-find.
The pki ca-authority-find CLI has been modified to provide search
filter based on the authority ID, parent ID, authority DN, and
issuer DN.
https://pagure.io/dogtagpki/issue/2652
Change-Id: I563a0b93eb7a00ae4771069812455ecc552f407c
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools')
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java index 6cd06be9f..75f83c0d5 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java @@ -4,6 +4,7 @@ import java.util.Arrays; import java.util.List; import org.apache.commons.cli.CommandLine; +import org.apache.commons.cli.Option; import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; @@ -17,12 +18,32 @@ public class AuthorityFindCLI extends CLI { public AuthorityFindCLI(AuthorityCLI authorityCLI) { super("find", "Find CAs", authorityCLI); this.authorityCLI = authorityCLI; + + createOptions(); } public void printHelp() { formatter.printHelp(getFullName(), options); } + public void createOptions() { + Option option = new Option(null, "id", true, "Authority ID"); + option.setArgName("ID"); + options.addOption(option); + + option = new Option(null, "parent-id", true, "Authority parent ID"); + option.setArgName("ID"); + options.addOption(option); + + option = new Option(null, "dn", true, "Authority DN"); + option.setArgName("DN"); + options.addOption(option); + + option = new Option(null, "issuer-dn", true, "Authority issuer DN"); + option.setArgName("DN"); + options.addOption(option); + } + public void execute(String[] args) throws Exception { // Always check for "--help" prior to parsing if (Arrays.asList(args).contains("--help")) { @@ -30,11 +51,15 @@ public class AuthorityFindCLI extends CLI { return; } - @SuppressWarnings("unused") CommandLine cmd = parser.parse(options, args); + String id = cmd.getOptionValue("id"); + String parentID = cmd.getOptionValue("parent-id"); + String dn = cmd.getOptionValue("dn"); + String issuerDN = cmd.getOptionValue("issuer-dn"); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); - List<AuthorityData> datas = authorityClient.listCAs(); + List<AuthorityData> datas = authorityClient.findCAs(id, parentID, dn, issuerDN); MainCLI.printMessage(datas.size() + " entries matched"); if (datas.size() == 0) return; |