You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2018/05/28 13:17:16 UTC
[1/2] syncope git commit: [SYNCOPE-1315] Do not sort client-side if
sort is done server-side
Repository: syncope
Updated Branches:
refs/heads/2_0_X fd3975f20 -> c090fe440
refs/heads/master 21bb4dc3c -> e15156735
[SYNCOPE-1315] Do not sort client-side if sort is done server-side
Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/c090fe44
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/c090fe44
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/c090fe44
Branch: refs/heads/2_0_X
Commit: c090fe4407846b6c67322046a43a14e14d1cdffd
Parents: fd3975f
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Mon May 28 15:16:55 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Mon May 28 15:16:55 2018 +0200
----------------------------------------------------------------------
.../panels/AccessTokenDirectoryPanel.java | 11 +++-------
.../tasks/AnyPropagationTaskDirectoryPanel.java | 13 ++++--------
.../console/tasks/ExecutionsDirectoryPanel.java | 9 ++++-----
.../tasks/NotificationTaskDirectoryPanel.java | 12 ++++-------
.../tasks/PropagationTaskDirectoryPanel.java | 12 ++++-------
.../tasks/ProvisioningTaskDirectoryPanel.java | 12 ++++-------
.../console/tasks/SchedTaskDirectoryPanel.java | 8 +++-----
.../core/persistence/jpa/dao/JPATaskDAO.java | 8 ++++----
.../fit/console/AbstractConsoleITCase.java | 21 ++++++++++++++++++++
.../syncope/fit/console/TopologyITCase.java | 4 ++--
10 files changed, 53 insertions(+), 57 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
index 86714ee..9111e93 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
@@ -30,7 +30,6 @@ import org.apache.cxf.rs.security.jose.jws.JwsJwtCompactConsumer;
import org.apache.syncope.client.console.SyncopeConsoleSession;
import org.apache.syncope.client.console.commons.Constants;
import org.apache.syncope.client.console.commons.DirectoryDataProvider;
-import org.apache.syncope.client.console.commons.SortableDataProviderComparator;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.AccessTokenDirectoryPanel.AccessTokenDataProvider;
import org.apache.syncope.client.console.rest.AccessTokenRestClient;
@@ -162,24 +161,20 @@ public class AccessTokenDirectoryPanel
private static final long serialVersionUID = 6267494272884913376L;
- private final SortableDataProviderComparator<AccessTokenTO> comparator;
-
private final AccessTokenRestClient restClient = new AccessTokenRestClient();
public AccessTokenDataProvider(final int paginatorRows) {
super(paginatorRows);
setSort("owner", SortOrder.ASCENDING);
- this.comparator = new SortableDataProviderComparator<>(this);
}
@Override
public Iterator<AccessTokenTO> iterator(final long first, final long count) {
int page = ((int) first / paginatorRows);
- List<AccessTokenTO> tasks = restClient.list((page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, comparator);
- return tasks.iterator();
+ return restClient.list(
+ (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
index dbd2047..824c2b1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
@@ -18,9 +18,7 @@
*/
package org.apache.syncope.client.console.tasks;
-import java.util.Collections;
import java.util.Iterator;
-import java.util.List;
import org.apache.syncope.client.console.panels.MultilevelPanel;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
import org.apache.syncope.common.lib.to.PropagationTaskTO;
@@ -67,13 +65,10 @@ public abstract class AnyPropagationTaskDirectoryPanel extends PropagationTaskDi
@Override
public Iterator<PropagationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<PropagationTaskTO> tasks = restClient.listPropagationTasks(
- anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listPropagationTasks(
+ anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
index 8a200d0..1c2cab1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.syncope.client.console.SyncopeConsoleSession;
@@ -187,10 +186,10 @@ public abstract class ExecutionsDirectoryPanel
@Override
public Iterator<ExecTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
- List<ExecTO> list = restClient.listExecutions(taskKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
- Collections.sort(list, comparator);
- return list.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listExecutions(
+ taskKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
index 9ccf0cb..9870fb5 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
@@ -223,13 +222,10 @@ public abstract class NotificationTaskDirectoryPanel
@Override
public Iterator<NotificationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<NotificationTaskTO> tasks = restClient.listNotificationTasks(
- notification, anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listNotificationTasks(
+ notification, anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
index 507e33a..3e5d33f 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
@@ -216,13 +215,10 @@ public abstract class PropagationTaskDirectoryPanel
@Override
public Iterator<PropagationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<PropagationTaskTO> tasks = restClient.listPropagationTasks(
- resource, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listPropagationTasks(
+ resource, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
index 59802b4..956e238 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
@@ -19,7 +19,6 @@
package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.syncope.client.console.panels.MultilevelPanel;
@@ -185,13 +184,10 @@ public abstract class ProvisioningTaskDirectoryPanel<T extends ProvisioningTaskT
@Override
public Iterator<T> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<T> tasks = restClient.list(
- resource, reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.list(
+ resource, reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
index a57856a..5cc8959 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
@@ -21,7 +21,6 @@ package org.apache.syncope.client.console.tasks;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.SerializationUtils;
@@ -328,10 +327,9 @@ public abstract class SchedTaskDirectoryPanel<T extends SchedTaskTO>
@Override
public Iterator<T> iterator(final long first, final long count) {
int page = ((int) first / paginatorRows);
-
- List<T> tasks = restClient.list(reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ return restClient.list(
+ reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
index f6ee96c..fdcc487 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
@@ -431,11 +431,11 @@ public class JPATaskDAO extends AbstractDAO<Task> implements TaskDAO {
: ((String) anyKey);
@SuppressWarnings("unchecked")
- T any = find(actualKey);
- if (any == null) {
+ T task = find(actualKey);
+ if (task == null) {
LOG.error("Could not find task with id {}, even if returned by native query", actualKey);
- } else if (!result.contains(any)) {
- result.add(any);
+ } else if (!result.contains(task)) {
+ result.add(task);
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
index fcb6173..57e652c 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
@@ -98,6 +98,27 @@ public abstract class AbstractConsoleITCase {
});
}
+ protected <V extends Serializable> Component findComponentByPropNotNull(
+ final String property, final String searchPath) {
+
+ Component component = TESTER.getComponentFromLastRenderedPage(searchPath);
+ return (component instanceof MarkupContainer ? MarkupContainer.class.cast(component) : component.getPage()).
+ visitChildren(ListItem.class, new IVisitor<ListItem<?>, Component>() {
+
+ @Override
+ public void component(final ListItem<?> object, final IVisit<Component> visit) {
+ try {
+ Method getter = PropertyResolver.getPropertyGetter(property, object.getModelObject());
+ if (getter != null && getter.invoke(object.getModelObject()) != null) {
+ visit.stop(object);
+ }
+ } catch (Exception e) {
+ LOG.error("Error invoke method", e);
+ }
+ }
+ });
+ }
+
protected Component findComponentById(final String searchPath, final String id) {
Component component = TESTER.getComponentFromLastRenderedPage(searchPath);
return (component instanceof MarkupContainer ? MarkupContainer.class.cast(component) : component.getPage()).
http://git-wip-us.apache.org/repos/asf/syncope/blob/c090fe44/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
index 6dcb678..a8caaf1 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
@@ -369,9 +369,9 @@ public class TopologyITCase extends AbstractConsoleITCase {
TESTER.executeAjaxEvent(component.getPageRelativePath() + ":res", Constants.ON_CLICK);
TESTER.clickLink("body:toggle:container:content:togglePanelContainer:container:actions:propagation");
- component = findComponentByProp("operation", "body:toggle:outerObjectsRepeater:1:outer:form:content:tasks:"
+ component = findComponentByPropNotNull("start", "body:toggle:outerObjectsRepeater:1:outer:form:content:tasks:"
+ "firstLevelContainer:first:container:content:searchContainer:resultTable:tablePanel:groupForm:"
- + "checkgroup:dataTable", ResourceOperation.CREATE);
+ + "checkgroup:dataTable");
assertNotNull(component);
TESTER.executeAjaxEvent(component.getPageRelativePath(), Constants.ON_CLICK);
[2/2] syncope git commit: [SYNCOPE-1315] Do not sort client-side if
sort is done server-side
Posted by il...@apache.org.
[SYNCOPE-1315] Do not sort client-side if sort is done server-side
Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/e1515673
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/e1515673
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/e1515673
Branch: refs/heads/master
Commit: e1515673509aac06d818e025ff05b821ab0d7798
Parents: 21bb4dc
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Mon May 28 15:16:55 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Mon May 28 15:17:07 2018 +0200
----------------------------------------------------------------------
.../panels/AccessTokenDirectoryPanel.java | 11 +++-------
.../tasks/AnyPropagationTaskDirectoryPanel.java | 13 ++++--------
.../console/tasks/ExecutionsDirectoryPanel.java | 9 ++++-----
.../tasks/NotificationTaskDirectoryPanel.java | 12 ++++-------
.../tasks/PropagationTaskDirectoryPanel.java | 12 ++++-------
.../tasks/ProvisioningTaskDirectoryPanel.java | 12 ++++-------
.../console/tasks/SchedTaskDirectoryPanel.java | 8 +++-----
.../core/persistence/jpa/dao/JPATaskDAO.java | 8 ++++----
.../fit/console/AbstractConsoleITCase.java | 21 ++++++++++++++++++++
.../syncope/fit/console/TopologyITCase.java | 4 ++--
10 files changed, 53 insertions(+), 57 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
index 082b860..29924fc 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/panels/AccessTokenDirectoryPanel.java
@@ -30,7 +30,6 @@ import org.apache.cxf.rs.security.jose.jws.JwsJwtCompactConsumer;
import org.apache.syncope.client.console.SyncopeConsoleSession;
import org.apache.syncope.client.console.commons.Constants;
import org.apache.syncope.client.console.commons.DirectoryDataProvider;
-import org.apache.syncope.client.console.commons.SortableDataProviderComparator;
import org.apache.syncope.client.console.pages.BasePage;
import org.apache.syncope.client.console.panels.AccessTokenDirectoryPanel.AccessTokenDataProvider;
import org.apache.syncope.client.console.rest.AccessTokenRestClient;
@@ -162,24 +161,20 @@ public class AccessTokenDirectoryPanel
private static final long serialVersionUID = 6267494272884913376L;
- private final SortableDataProviderComparator<AccessTokenTO> comparator;
-
private final AccessTokenRestClient restClient = new AccessTokenRestClient();
public AccessTokenDataProvider(final int paginatorRows) {
super(paginatorRows);
setSort("owner", SortOrder.ASCENDING);
- this.comparator = new SortableDataProviderComparator<>(this);
}
@Override
public Iterator<AccessTokenTO> iterator(final long first, final long count) {
int page = ((int) first / paginatorRows);
- List<AccessTokenTO> tasks = restClient.list((page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, comparator);
- return tasks.iterator();
+ return restClient.list(
+ (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
index dbd2047..824c2b1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/AnyPropagationTaskDirectoryPanel.java
@@ -18,9 +18,7 @@
*/
package org.apache.syncope.client.console.tasks;
-import java.util.Collections;
import java.util.Iterator;
-import java.util.List;
import org.apache.syncope.client.console.panels.MultilevelPanel;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
import org.apache.syncope.common.lib.to.PropagationTaskTO;
@@ -67,13 +65,10 @@ public abstract class AnyPropagationTaskDirectoryPanel extends PropagationTaskDi
@Override
public Iterator<PropagationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<PropagationTaskTO> tasks = restClient.listPropagationTasks(
- anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listPropagationTasks(
+ anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
index e264bff..345a1eb 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ExecutionsDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.syncope.client.console.SyncopeConsoleSession;
@@ -187,10 +186,10 @@ public abstract class ExecutionsDirectoryPanel
@Override
public Iterator<ExecTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
- List<ExecTO> list = restClient.listExecutions(taskKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
- Collections.sort(list, comparator);
- return list.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listExecutions(
+ taskKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
@Override
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
index a0bc61f..656b707 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/NotificationTaskDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
@@ -223,13 +222,10 @@ public abstract class NotificationTaskDirectoryPanel
@Override
public Iterator<NotificationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<NotificationTaskTO> tasks = restClient.listNotificationTasks(
- notification, anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listNotificationTasks(
+ notification, anyTypeKind, entityKey, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
index ae30e66..5298b22 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/PropagationTaskDirectoryPanel.java
@@ -20,7 +20,6 @@ package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
@@ -216,13 +215,10 @@ public abstract class PropagationTaskDirectoryPanel
@Override
public Iterator<PropagationTaskTO> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<PropagationTaskTO> tasks = restClient.listPropagationTasks(
- resource, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.listPropagationTasks(
+ resource, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
index 504e767..0577433 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/ProvisioningTaskDirectoryPanel.java
@@ -19,7 +19,6 @@
package org.apache.syncope.client.console.tasks;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.syncope.client.console.panels.MultilevelPanel;
@@ -185,13 +184,10 @@ public abstract class ProvisioningTaskDirectoryPanel<T extends ProvisioningTaskT
@Override
public Iterator<T> iterator(final long first, final long count) {
- final int page = ((int) first / paginatorRows);
-
- final List<T> tasks = restClient.list(
- resource, reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
-
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ int page = ((int) first / paginatorRows);
+ return restClient.list(
+ resource, reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
index bfc7eb6..ed2f7c2 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/tasks/SchedTaskDirectoryPanel.java
@@ -21,7 +21,6 @@ package org.apache.syncope.client.console.tasks;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang3.SerializationUtils;
@@ -315,10 +314,9 @@ public abstract class SchedTaskDirectoryPanel<T extends SchedTaskTO>
@Override
public Iterator<T> iterator(final long first, final long count) {
int page = ((int) first / paginatorRows);
-
- List<T> tasks = restClient.list(reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort());
- Collections.sort(tasks, getComparator());
- return tasks.iterator();
+ return restClient.list(
+ reference, (page < 0 ? 0 : page) + 1, paginatorRows, getSort()).
+ iterator();
}
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
index dd78ec3..fc9dbb0 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPATaskDAO.java
@@ -479,11 +479,11 @@ public class JPATaskDAO extends AbstractDAO<Task> implements TaskDAO {
: ((String) anyKey);
@SuppressWarnings("unchecked")
- T any = find(actualKey);
- if (any == null) {
+ T task = find(actualKey);
+ if (task == null) {
LOG.error("Could not find task with id {}, even if returned by native query", actualKey);
- } else if (!result.contains(any)) {
- result.add(any);
+ } else if (!result.contains(task)) {
+ result.add(task);
}
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
index b7574e1..506b4a2 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/AbstractConsoleITCase.java
@@ -89,6 +89,27 @@ public abstract class AbstractConsoleITCase {
});
}
+ protected <V extends Serializable> Component findComponentByPropNotNull(
+ final String property, final String searchPath) {
+
+ Component component = TESTER.getComponentFromLastRenderedPage(searchPath);
+ return (component instanceof MarkupContainer ? MarkupContainer.class.cast(component) : component.getPage()).
+ visitChildren(ListItem.class, new IVisitor<ListItem<?>, Component>() {
+
+ @Override
+ public void component(final ListItem<?> object, final IVisit<Component> visit) {
+ try {
+ Method getter = PropertyResolver.getPropertyGetter(property, object.getModelObject());
+ if (getter != null && getter.invoke(object.getModelObject()) != null) {
+ visit.stop(object);
+ }
+ } catch (Exception e) {
+ LOG.error("Error invoke method", e);
+ }
+ }
+ });
+ }
+
protected Component findComponentById(final String searchPath, final String id) {
Component component = TESTER.getComponentFromLastRenderedPage(searchPath);
return (component instanceof MarkupContainer ? MarkupContainer.class.cast(component) : component.getPage()).
http://git-wip-us.apache.org/repos/asf/syncope/blob/e1515673/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
index 7a99aaf..81a0356 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/console/TopologyITCase.java
@@ -369,9 +369,9 @@ public class TopologyITCase extends AbstractConsoleITCase {
TESTER.executeAjaxEvent(component.getPageRelativePath() + ":res", Constants.ON_CLICK);
TESTER.clickLink("body:toggle:container:content:togglePanelContainer:container:actions:propagation");
- component = findComponentByProp("operation", "body:toggle:outerObjectsRepeater:1:outer:form:content:tasks:"
+ component = findComponentByPropNotNull("start", "body:toggle:outerObjectsRepeater:1:outer:form:content:tasks:"
+ "firstLevelContainer:first:container:content:searchContainer:resultTable:tablePanel:groupForm:"
- + "checkgroup:dataTable", ResourceOperation.CREATE);
+ + "checkgroup:dataTable");
assertNotNull(component);
TESTER.executeAjaxEvent(component.getPageRelativePath(), Constants.ON_CLICK);