This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch 3_0_X
in repository https://gitbox.apache.org/repos/asf/syncope.git
The following commit(s) were added to refs/heads/3_0_X by this push:
new 919620ccfb [SYNCOPE-1895] Passing the current FIQL to the CSV Push
service
919620ccfb is described below
commit 919620ccfbbe2d542e4cf8ca863b4cb536efdcf7
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Fri Aug 1 14:28:28 2025 +0200
[SYNCOPE-1895] Passing the current FIQL to the CSV Push service
---
...AnyDirectoryPanelAdditionalActionsProvider.java | 32 ++++++++++------------
...AnyDirectoryPanelAdditionalActionsProvider.java | 3 +-
...AnyDirectoryPanelAdditionalActionsProvider.java | 3 +-
.../client/console/panels/AnyDirectoryPanel.java | 9 +++---
4 files changed, 23 insertions(+), 24 deletions(-)
diff --git
a/client/idm/console/src/main/java/org/apache/syncope/client/console/commons/IdMAnyDirectoryPanelAdditionalActionsProvider.java
b/client/idm/console/src/main/java/org/apache/syncope/client/console/commons/IdMAnyDirectoryPanelAdditionalActionsProvider.java
index db55c589be..d62865addc 100644
---
a/client/idm/console/src/main/java/org/apache/syncope/client/console/commons/IdMAnyDirectoryPanelAdditionalActionsProvider.java
+++
b/client/idm/console/src/main/java/org/apache/syncope/client/console/commons/IdMAnyDirectoryPanelAdditionalActionsProvider.java
@@ -83,7 +83,7 @@ public class IdMAnyDirectoryPanelAdditionalActionsProvider
implements AnyDirecto
final WebMarkupContainer container,
final String type,
final String realm,
- final String fiql,
+ final Model<String> fiql,
final int rows,
final List<String> pSchemaNames,
final List<String> dSchemaNames,
@@ -152,7 +152,7 @@ public class IdMAnyDirectoryPanelAdditionalActionsProvider
implements AnyDirecto
@Override
public void onClick(final AjaxRequestTarget target) {
CSVPushSpec spec = csvPushSpec(type, pSchemaNames,
dSchemaNames);
- AnyQuery query = csvAnyQuery(realm, fiql, rows,
panel.getDataProvider());
+ AnyQuery query = csvAnyQuery(realm, fiql.getObject(), rows,
panel.getDataProvider());
target.add(modal.setContent(new CSVPushWizardBuilder(
spec, query, csvDownloadBehavior,
reconciliationRestClient, implementationRestClient, pageRef).
@@ -195,25 +195,21 @@ public class
IdMAnyDirectoryPanelAdditionalActionsProvider implements AnyDirecto
final List<String> pSchemaNames,
final List<String> dSchemaNames) {
- CSVPushSpec spec = new CSVPushSpec.Builder(type).build();
- spec.setFields(PreferenceManager.getList(
- DisplayAttributesModalPanel.getPrefDetailView(type)).
- stream().filter(name ->
!Constants.KEY_FIELD_NAME.equalsIgnoreCase(name)).
- collect(Collectors.toList()));
- spec.setPlainAttrs(PreferenceManager.getList(
- DisplayAttributesModalPanel.getPrefPlainAttributeView(type)).
-
stream().filter(pSchemaNames::contains).collect(Collectors.toList()));
- spec.setDerAttrs(PreferenceManager.getList(
- DisplayAttributesModalPanel.getPrefPlainAttributeView(type)).
-
stream().filter(dSchemaNames::contains).collect(Collectors.toList()));
- return spec;
+ return new CSVPushSpec.Builder(type).
+
fields(PreferenceManager.getList(DisplayAttributesModalPanel.getPrefDetailView(type)).
+ stream().filter(name ->
!Constants.KEY_FIELD_NAME.equalsIgnoreCase(name)).
+ collect(Collectors.toList())).
+
plainAttrs(PreferenceManager.getList(DisplayAttributesModalPanel.getPrefPlainAttributeView(type)).
+ stream().filter(pSchemaNames::contains).
+ collect(Collectors.toList())).
+
derAttrs(PreferenceManager.getList(DisplayAttributesModalPanel.getPrefPlainAttributeView(type)).
+ stream().filter(dSchemaNames::contains).
+ collect(Collectors.toList())).
+ build();
}
protected CSVPullSpec csvPullSpec(final String type, final String realm) {
- CSVPullSpec spec = new CSVPullSpec();
- spec.setAnyTypeKey(type);
- spec.setDestinationRealm(realm);
- return spec;
+ return new CSVPullSpec.Builder(type, realm).build();
}
protected AnyQuery csvAnyQuery(
diff --git
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/AnyDirectoryPanelAdditionalActionsProvider.java
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/AnyDirectoryPanelAdditionalActionsProvider.java
index daeec5ab28..a9f9ad444c 100644
---
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/AnyDirectoryPanelAdditionalActionsProvider.java
+++
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/AnyDirectoryPanelAdditionalActionsProvider.java
@@ -24,6 +24,7 @@ import
org.apache.syncope.client.console.panels.AnyDirectoryPanel;
import
org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
import org.apache.wicket.PageReference;
import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.model.Model;
public interface AnyDirectoryPanelAdditionalActionsProvider extends
Serializable {
@@ -33,7 +34,7 @@ public interface AnyDirectoryPanelAdditionalActionsProvider
extends Serializable
WebMarkupContainer container,
String type,
String realm,
- String fiql,
+ Model<String> fiql,
int rows,
List<String> pSchemaNames,
List<String> dSchemaNames,
diff --git
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/IdRepoAnyDirectoryPanelAdditionalActionsProvider.java
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/IdRepoAnyDirectoryPanelAdditionalActionsProvider.java
index 4402f2689c..bfdcba0f6d 100644
---
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/IdRepoAnyDirectoryPanelAdditionalActionsProvider.java
+++
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/commons/IdRepoAnyDirectoryPanelAdditionalActionsProvider.java
@@ -25,6 +25,7 @@ import org.apache.wicket.PageReference;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.model.Model;
public class IdRepoAnyDirectoryPanelAdditionalActionsProvider implements
AnyDirectoryPanelAdditionalActionsProvider {
@@ -38,7 +39,7 @@ public class IdRepoAnyDirectoryPanelAdditionalActionsProvider
implements AnyDire
final WebMarkupContainer container,
final String type,
final String realm,
- final String fiql,
+ final Model<String> fiql,
final int rows,
final List<String> pSchemaNames,
final List<String> dSchemaNames,
diff --git
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
index 50f5d63890..b0133b5c3a 100644
---
a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
+++
b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java
@@ -63,6 +63,7 @@ import
org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDa
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import
org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.model.Model;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.model.util.ListModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
@@ -86,7 +87,7 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E
extends AbstractAnyRe
/**
* Filter used in case of filtered search.
*/
- protected String fiql;
+ protected final Model<String> fiql;
/**
* Realm related to current panel.
@@ -120,7 +121,7 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E
extends AbstractAnyRe
realm = builder.realm;
type = builder.type;
- fiql = builder.fiql;
+ fiql = new Model<>(builder.fiql);
utilityModal.size(Modal.Size.Large);
addOuterObject(utilityModal);
@@ -242,7 +243,7 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E
extends AbstractAnyRe
@Override
protected AnyDataProvider<A> dataProvider() {
- return new AnyDataProvider<>(restClient, rows, filtered, realm, type,
pageRef).setFIQL(this.fiql);
+ return new AnyDataProvider<>(restClient, rows, filtered, realm, type,
pageRef).setFIQL(fiql.getObject());
}
public AnyDataProvider<A> getDataProvider() {
@@ -250,7 +251,7 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E
extends AbstractAnyRe
}
public void search(final String fiql, final AjaxRequestTarget target) {
- this.fiql = fiql;
+ this.fiql.setObject(fiql);
dataProvider.setFIQL(fiql);
super.search(target);
}