summaryrefslogtreecommitdiffstats
path: root/base/java-tools/src/com/netscape/cmstools/profile
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2013-11-13 12:00:06 -0500
committerEndi S. Dewata <edewata@redhat.com>2013-11-14 16:54:39 -0500
commit4d1ec71c790e467ecae184df01abf825f94d1dc3 (patch)
tree8f821411a4ec5d275b4ee0702e438cafc3e92c60 /base/java-tools/src/com/netscape/cmstools/profile
parent17a52b686bd81cda1bce76b454b3127d6575de62 (diff)
downloadpki-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/profile')
-rw-r--r--base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java36
1 files changed, 35 insertions, 1 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java b/base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java
index 1370319f9..21559551c 100644
--- a/base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java
+++ b/base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java
@@ -2,7 +2,11 @@ package com.netscape.cmstools.profile;
import java.util.Collection;
+import org.apache.commons.cli.CommandLine;
+import org.apache.commons.cli.Option;
+
import com.netscape.certsrv.profile.ProfileDataInfo;
+import com.netscape.certsrv.profile.ProfileDataInfos;
import com.netscape.cmstools.cli.CLI;
import com.netscape.cmstools.cli.MainCLI;
@@ -21,7 +25,37 @@ public class ProfileFindCLI extends CLI {
public void execute(String[] args) throws Exception {
- Collection<ProfileDataInfo> infos = profileCLI.profileClient.listProfiles().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 (Exception 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 = profileCLI.profileClient.listProfiles(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) {