diff options
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java')
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/profile/ProfileFindCLI.java | 36 |
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) { |