[GRP-942] send total number of elements back on paged call Created: 22/Oct/13  Updated: 20/May/16

Status: Open
Project: Grouper
Component/s: WS
Affects Version/s: 2.2.0
Fix Version/s: 2.4.0

Type: New Feature Priority: Minor
Reporter: Chris Hyzer (upenn.edu) Assignee: Chris Hyzer (upenn.edu)
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I could look into that too… btw, you can chain up your find groups calls in weird ways… if you have a simple call like the one you suggest, then the paging will work, if it is more complex, then not.

From: Geert van der Ploeg gvanderploeg
Sent: Thursday, October 17, 2013 9:38 AM
To: Chris Hyzer
Cc: grouper-users
Subject: Re: [grouper-users] Grouper client: getting total result count when performing paginated query

Hi,

I would certainly be interested in a fix for this feature. We use 2.1.5 right now, a patched version of that release would work fine for us.
By the way, would the same fix work for a likewise call to GetGroups?
~~~
WsGetGroupsResults results = new GcGetGroups()
.addSubjectId(personId)
.assignPageSize(pageSize)
.assignPageNumber(pageNumber)
.execute();
~~~

Some background information: Currently I'm working on replacing our 1.6.3 Grouper installation with an up to date version. This also includes removing some direct database calls to the Grouper database and replace them with proper calls to the Grouper web service.
Pagination is one key issue to be solved, the other one is getting a list of 'my groups', but filtered on (part of) the group name (and paginated as well). Maybe this will result in a feature request as well, but we will see.

Thank you!

Geert

On 17 October 2013 14:34, Chris Hyzer <mchyzer> wrote:
Unfortunately right now it doesn’t return that right now. I could probably add that in for you if you wanted to get the latest 2.1.4 and rebuild, is that something you are interested in?

Thanks,
Chris

From: grouper-users-request grouper-users-request On Behalf Of Geert van der Ploeg
Sent: Thursday, October 17, 2013 5:56 AM
To: grouper-users
Subject: [grouper-users] Grouper client: getting total result count when performing paginated query

Hi all,

I'm trying to use Grouper client to get a list of groups, but I want the results paginated.
So I include a WsQueryFilter to contain a pageSize and pageNumber.
This indeed returns a paged 'slice' of the results.

But how can I figure out the total result count of the request (if it weren't paginated)?
Only then I could render a message like "Displaying results 11-20 of 87" and decide whether to hide/show 'next page' links etc, in my user interface.

Code I use right now:
~~~
WsQueryFilter filter = new WsQueryFilter();
filter.setPageSize("10");
filter.setPageNumber("1");
filter.setQueryFilterType("FIND_BY_GROUP_NAME_APPROXIMATE");
filter.setGroupName("%");
String personId = "urn:collab:person:example.com:admin";
WsFindGroupsResults results = new GcFindGroups()
.assignQueryFilter(filter)
.assignIncludeGroupDetail(false)
.assignActAsSubject(new WsSubjectLookup(personId, null, null))
.execute();

~~~
Running the same query but without filter would probably return the whole set. But that would defeat the purpose of the pagination (not having to query a huge list of groups).

Thanks for any hints.

Kind regards,
Geert



 Comments   
Comment by mchyzer [ 20/May/16 ]

From: Katika,Shanthi Swaroop
Sent: Friday, May 20, 2016 11:13 AM
To: Hyzer, Chris; Geert van der Ploeg
Cc: grouper-users
Subject: Re: [grouper-users] Grouper client: getting total result count when performing paginated query

Hi.

I just realized that replying from the user list webpage doesn’t send all the previous communication with it. For context, I’m resending my previous question. I apologize for any inconvenience caused.

Is there any update on this issue? I'm currently doing a workaround for
pagination by making two API calls. The first API call to get current Page
results, and the second API call by changing the pageSize to check if the next
few pages exist or not and then generate page links in pagination depending on
how many more results exist.

If it's not possible to add parameters to the current APIs, could you create a
new API to get just count of number of groups and count of number of subjects
in a group?

Best,
Swaroop

Generated at Thu Apr 25 23:03:08 UTC 2024 using Jira 9.4.18#940018-sha1:32a59db0b032756f9bbd6a22c656d21edb3fb41f.