This is an automated email from the ASF dual-hosted git repository.

ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/master by this push:
     new b8e988a12c Upgrading Commons JEXL and maven-dependency-plugin
b8e988a12c is described below

commit b8e988a12c32eb6470fdf6e4e98f0f67470b68fc
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Wed Feb 11 08:30:57 2026 +0100

    Upgrading Commons JEXL and maven-dependency-plugin
---
 .../org/apache/syncope/core/persistence/common/dao/AnyFinder.java | 8 ++++----
 .../provisioning/java/propagation/DefaultPropagationManager.java  | 4 ++--
 .../persistence/elasticsearch/dao/ElasticsearchAnySearchDAO.java  | 5 ++---
 .../elasticsearch/dao/ElasticsearchAnySearchDAOTest.java          | 4 ++--
 .../core/persistence/opensearch/dao/OpenSearchAnySearchDAO.java   | 5 ++---
 .../persistence/opensearch/dao/OpenSearchAnySearchDAOTest.java    | 4 ++--
 .../src/test/java/org/apache/syncope/fit/core/PullTaskITCase.java | 2 +-
 pom.xml                                                           | 4 ++--
 8 files changed, 17 insertions(+), 19 deletions(-)

diff --git 
a/core/persistence-common/src/main/java/org/apache/syncope/core/persistence/common/dao/AnyFinder.java
 
b/core/persistence-common/src/main/java/org/apache/syncope/core/persistence/common/dao/AnyFinder.java
index 4706ddd1a0..7297bd7f27 100644
--- 
a/core/persistence-common/src/main/java/org/apache/syncope/core/persistence/common/dao/AnyFinder.java
+++ 
b/core/persistence-common/src/main/java/org/apache/syncope/core/persistence/common/dao/AnyFinder.java
@@ -139,9 +139,9 @@ public class AnyFinder {
         for (int i = 0; i < identifiers.size() && 
!used.contains(identifiers.get(i)); i++) {
             used.add(identifiers.get(i));
 
-            AttrCond cond = plainSchemaDAO.findById(identifiers.get(i)).
-                    map(schema -> new AttrCond()).
-                    orElseGet(() -> new AnyCond());
+            AttrCond cond = plainSchemaDAO.existsById(identifiers.get(i))
+                    ? new AttrCond()
+                    : new AnyCond();
             cond.setType(ignoreCaseMatch ? AttrCond.Type.IEQ : 
AttrCond.Type.EQ);
             cond.setSchema(identifiers.get(i));
             cond.setExpression(attrValues.get(i));
@@ -150,6 +150,6 @@ public class AnyFinder {
 
         LOG.debug("Generated search {} conditions: {}", anyTypeKind, 
andConditions);
 
-        return anySearchDAO.search(SearchCond.and(andConditions), anyTypeKind);
+        return andConditions.isEmpty() ? List.of() : 
anySearchDAO.search(SearchCond.and(andConditions), anyTypeKind);
     }
 }
diff --git 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/DefaultPropagationManager.java
 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/DefaultPropagationManager.java
index ba1197c7d8..bbf4ba3ca9 100644
--- 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/DefaultPropagationManager.java
+++ 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/DefaultPropagationManager.java
@@ -612,8 +612,8 @@ public class DefaultPropagationManager implements 
PropagationManager {
                             enable,
                             resource,
                             provision);
-                    attrs.add(new PropagationAttrs(resource.getKey(), 
preparedAttrs.connObjectLink(), preparedAttrs.
-                            attributes()));
+                    attrs.add(new PropagationAttrs(
+                            resource.getKey(), preparedAttrs.connObjectLink(), 
preparedAttrs.attributes()));
                 }));
 
         if (any instanceof User user) {
diff --git 
a/ext/elasticsearch/persistence/src/main/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAO.java
 
b/ext/elasticsearch/persistence/src/main/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAO.java
index 6f394abff1..2e3ba71b3f 100644
--- 
a/ext/elasticsearch/persistence/src/main/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAO.java
+++ 
b/ext/elasticsearch/persistence/src/main/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAO.java
@@ -126,8 +126,7 @@ public class ElasticsearchAnySearchDAO extends 
AbstractAnySearchDAO {
     protected AdminRealmsFilter getAdminRealmsFilter(
             final Realm base,
             final boolean recursive,
-            final Set<String> adminRealms,
-            final AnyTypeKind kind) {
+            final Set<String> adminRealms) {
 
         Set<Pair<AnyTypeKind, String>> managed = new HashSet<>();
         List<Query> queries = new ArrayList<>();
@@ -185,7 +184,7 @@ public class ElasticsearchAnySearchDAO extends 
AbstractAnySearchDAO {
                         build();
             }
         } else {
-            AdminRealmsFilter filter = getAdminRealmsFilter(base, recursive, 
adminRealms, kind);
+            AdminRealmsFilter filter = getAdminRealmsFilter(base, recursive, 
adminRealms);
             query = getQuery(buildEffectiveCond(cond, filter.managed(), kind), 
kind);
 
             if (filter.query().isPresent()) {
diff --git 
a/ext/elasticsearch/persistence/src/test/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAOTest.java
 
b/ext/elasticsearch/persistence/src/test/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAOTest.java
index 08d0ba06eb..729346452c 100644
--- 
a/ext/elasticsearch/persistence/src/test/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAOTest.java
+++ 
b/ext/elasticsearch/persistence/src/test/java/org/apache/syncope/core/persistence/elasticsearch/dao/ElasticsearchAnySearchDAOTest.java
@@ -119,7 +119,7 @@ public class ElasticsearchAnySearchDAOTest {
         // 2. test
         Set<String> adminRealms = Set.of(SyncopeConstants.ROOT_REALM);
         ElasticsearchAnySearchDAO.AdminRealmsFilter filter =
-                searchDAO.getAdminRealmsFilter(root, true, adminRealms, 
AnyTypeKind.USER);
+                searchDAO.getAdminRealmsFilter(root, true, adminRealms);
 
         assertThat(new Query.Builder().disMax(QueryBuilders.disMax().queries(
                 new 
Query.Builder().term(QueryBuilders.term().caseInsensitive(false).
@@ -133,7 +133,7 @@ public class ElasticsearchAnySearchDAOTest {
     public void getAdminRealmsFilter4manager() {
         Set<String> adminRealms = Set.of(new RealmUtils.ManagerRealm("/any", 
AnyTypeKind.GROUP, "groupKey").output());
         ElasticsearchAnySearchDAO.AdminRealmsFilter filter =
-                searchDAO.getAdminRealmsFilter(realmDAO.getRoot(), true, 
adminRealms, AnyTypeKind.USER);
+                searchDAO.getAdminRealmsFilter(realmDAO.getRoot(), true, 
adminRealms);
         assertFalse(filter.query().isPresent());
         assertEquals(Set.of(Pair.of(AnyTypeKind.GROUP, "groupKey")), 
filter.managed());
     }
diff --git 
a/ext/opensearch/persistence/src/main/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAO.java
 
b/ext/opensearch/persistence/src/main/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAO.java
index 68724f3ef4..d4e973f36c 100644
--- 
a/ext/opensearch/persistence/src/main/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAO.java
+++ 
b/ext/opensearch/persistence/src/main/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAO.java
@@ -125,8 +125,7 @@ public class OpenSearchAnySearchDAO extends 
AbstractAnySearchDAO {
     protected AdminRealmsFilter getAdminRealmsFilter(
             final Realm base,
             final boolean recursive,
-            final Set<String> adminRealms,
-            final AnyTypeKind kind) {
+            final Set<String> adminRealms) {
 
         Set<Pair<AnyTypeKind, String>> managed = new HashSet<>();
         List<Query> queries = new ArrayList<>();
@@ -184,7 +183,7 @@ public class OpenSearchAnySearchDAO extends 
AbstractAnySearchDAO {
                         build();
             }
         } else {
-            AdminRealmsFilter filter = getAdminRealmsFilter(base, recursive, 
adminRealms, kind);
+            AdminRealmsFilter filter = getAdminRealmsFilter(base, recursive, 
adminRealms);
             query = getQuery(buildEffectiveCond(cond, filter.managed(), kind), 
kind);
 
             if (filter.query().isPresent()) {
diff --git 
a/ext/opensearch/persistence/src/test/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAOTest.java
 
b/ext/opensearch/persistence/src/test/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAOTest.java
index 1027438028..86f99f3ec9 100644
--- 
a/ext/opensearch/persistence/src/test/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAOTest.java
+++ 
b/ext/opensearch/persistence/src/test/java/org/apache/syncope/core/persistence/opensearch/dao/OpenSearchAnySearchDAOTest.java
@@ -120,7 +120,7 @@ public class OpenSearchAnySearchDAOTest {
         // 2. test
         Set<String> adminRealms = Set.of(SyncopeConstants.ROOT_REALM);
         OpenSearchAnySearchDAO.AdminRealmsFilter filter =
-                searchDAO.getAdminRealmsFilter(root, true, adminRealms, 
AnyTypeKind.USER);
+                searchDAO.getAdminRealmsFilter(root, true, adminRealms);
 
         assertThat(new Query.Builder().disMax(QueryBuilders.disMax().queries(
                 new 
Query.Builder().term(QueryBuilders.term().caseInsensitive(false).
@@ -134,7 +134,7 @@ public class OpenSearchAnySearchDAOTest {
     public void getAdminRealmsFilter4manager() {
         Set<String> adminRealms = Set.of(new RealmUtils.ManagerRealm("/any", 
AnyTypeKind.GROUP, "groupKey").output());
         OpenSearchAnySearchDAO.AdminRealmsFilter filter =
-                searchDAO.getAdminRealmsFilter(realmDAO.getRoot(), true, 
adminRealms, AnyTypeKind.USER);
+                searchDAO.getAdminRealmsFilter(realmDAO.getRoot(), true, 
adminRealms);
         assertFalse(filter.query().isPresent());
         assertEquals(Set.of(Pair.of(AnyTypeKind.GROUP, "groupKey")), 
filter.managed());
     }
diff --git 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/PullTaskITCase.java
 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/PullTaskITCase.java
index f857eab793..f620bb3800 100644
--- 
a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/PullTaskITCase.java
+++ 
b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/PullTaskITCase.java
@@ -510,7 +510,7 @@ public class PullTaskITCase extends AbstractTaskITCase {
                         
fiql(SyncopeClient.getUserSearchConditionBuilder().is("username").equalTo("pullFromLDAP").
                                 query()).
                         build());
-        
assertNull(matchingUsers.getResult().getFirst().getPlainAttr("title").orElse(null));
+        
assertTrue(matchingUsers.getResult().getFirst().getPlainAttr("title").isEmpty());
 
         // SYNCOPE-1356 remove group membership from LDAP, pull and check in 
Syncope
         ConnObject groupConnObject = RESOURCE_SERVICE.readConnObject(
diff --git a/pom.xml b/pom.xml
index cbd89e04b4..c02ef09e7c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -458,7 +458,7 @@ under the License.
     <debezium.version>3.0</debezium.version>
 
     <commons-lang3.version>3.20.0</commons-lang3.version>
-    <commons-jexl.version>3.6.1</commons-jexl.version>
+    <commons-jexl.version>3.6.2</commons-jexl.version>
     <commons-text.version>1.15.0</commons-text.version>
 
     <pac4j.version>6.2.2</pac4j.version>
@@ -1651,7 +1651,7 @@ under the License.
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-dependency-plugin</artifactId>
-          <version>3.9.0</version>
+          <version>3.10.0</version>
           <configuration>
             <outputDirectory>${bundles.directory}</outputDirectory>
             <artifactItems>

Reply via email to