diff options
author | Endi S. Dewata <edewata@redhat.com> | 2013-11-13 12:00:06 -0500 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2013-11-14 16:54:39 -0500 |
commit | 4d1ec71c790e467ecae184df01abf825f94d1dc3 (patch) | |
tree | 8f821411a4ec5d275b4ee0702e438cafc3e92c60 /base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java | |
parent | 17a52b686bd81cda1bce76b454b3127d6575de62 (diff) | |
download | pki-4d1ec71c790e467ecae184df01abf825f94d1dc3.tar.gz pki-4d1ec71c790e467ecae184df01abf825f94d1dc3.tar.xz pki-4d1ec71c790e467ecae184df01abf825f94d1dc3.zip |
Added paging on all find commands.
The find commands in some REST services have been modified to support
paging to be consistent with others. The other find commands have been
cleaned up as well.
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java')
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java b/base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java index 48c051905..72172535a 100644 --- a/base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/cert/CertRequestProfileFindCLI.java @@ -2,7 +2,12 @@ package com.netscape.cmstools.cert; import java.util.Collection; +import org.apache.commons.cli.CommandLine; +import org.apache.commons.cli.Option; +import org.apache.commons.cli.ParseException; + import com.netscape.certsrv.profile.ProfileDataInfo; +import com.netscape.certsrv.profile.ProfileDataInfos; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; import com.netscape.cmstools.profile.ProfileCLI; @@ -21,7 +26,38 @@ public class CertRequestProfileFindCLI extends CLI { } public void execute(String[] args) throws Exception { - Collection<ProfileDataInfo> infos = certCLI.certClient.listEnrollmentTemplates().getProfileInfos(); + + Option option = new Option(null, "start", true, "Page start"); + option.setArgName("start"); + options.addOption(option); + + option = new Option(null, "size", true, "Page size"); + option.setArgName("size"); + options.addOption(option); + + CommandLine cmd = null; + + try { + cmd = parser.parse(options, args); + + } catch (ParseException e) { + System.err.println("Error: " + e.getMessage()); + printHelp(); + System.exit(1); + } + + String s = cmd.getOptionValue("start"); + Integer start = s == null ? null : Integer.valueOf(s); + + s = cmd.getOptionValue("size"); + Integer size = s == null ? null : Integer.valueOf(s); + + ProfileDataInfos response = certCLI.certClient.listEnrollmentTemplates(start, size); + + MainCLI.printMessage(response.getTotal() + " entries matched"); + if (response.getTotal() == 0) return; + + Collection<ProfileDataInfo> infos = response.getEntries(); boolean first = true; for (ProfileDataInfo info: infos) { |