Author: andreapatricelli Date: Fri May 9 06:55:48 2014 New Revision: 1593492
URL: http://svn.apache.org/r1593492 Log: improved management of page number sent to rest services that allow pagination Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/AttributableDataProvider.java syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Tasks.java Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/AttributableDataProvider.java URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/AttributableDataProvider.java?rev=1593492&r1=1593491&r2=1593492&view=diff ============================================================================== --- syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/AttributableDataProvider.java (original) +++ syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/AttributableDataProvider.java Fri May 9 06:55:48 2014 @@ -69,12 +69,14 @@ public class AttributableDataProvider ex public Iterator<? extends AbstractAttributableTO> iterator(final long first, final long count) { List<? extends AbstractAttributableTO> result; + final int page = ((int) first / paginatorRows); + if (filtered) { result = fiql == null ? Collections.<AbstractAttributableTO>emptyList() - : restClient.search(fiql, ((int) first / paginatorRows) + 1, paginatorRows, getSort()); + : restClient.search(fiql, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()); } else { - result = restClient.list(((int) first / paginatorRows) + 1, paginatorRows, getSort()); + result = restClient.list((page < 0 ? 0 : page) + 1, paginatorRows, getSort()); } Collections.sort(result, comparator); Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java?rev=1593492&r1=1593491&r2=1593492&view=diff ============================================================================== --- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java (original) +++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java Fri May 9 06:55:48 2014 @@ -384,8 +384,10 @@ public class Reports extends BasePage { @Override public Iterator<ReportTO> iterator(final long first, final long count) { + final int page = ((int) first / paginatorRows); + final List<ReportTO> list = - reportRestClient.list(((int) first / paginatorRows) + 1, paginatorRows, getSort()); + reportRestClient.list((page < 0 ? 0 : page) + 1, paginatorRows, getSort()); Collections.sort(list, comparator); return list.iterator(); } Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Tasks.java URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Tasks.java?rev=1593492&r1=1593491&r2=1593492&view=diff ============================================================================== --- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Tasks.java (original) +++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Tasks.java Fri May 9 06:55:48 2014 @@ -150,8 +150,10 @@ public class Tasks extends BasePage { @Override public Iterator<T> iterator(final long first, final long count) { final List<T> tasks = new ArrayList<T>(); - - for (T task : restClient.list(reference, ((int) first / paginatorRows) + 1, paginatorRows, getSort())) { + + final int page = ((int) first / paginatorRows); + + for (T task : restClient.list(reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort())) { if (task instanceof SchedTaskTO && ((SchedTaskTO) task).getLastExec() == null && task.getExecutions() != null && !task.getExecutions().isEmpty()) {