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()) {
 


Reply via email to