You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by fm...@apache.org on 2018/10/11 08:40:12 UTC

[1/2] syncope git commit: [SYNCOPE-1383] fixes the class cast exception by using a real SearchResultHandler

Repository: syncope
Updated Branches:
  refs/heads/master 794416c94 -> 3c3c00877


[SYNCOPE-1383] fixes the class cast exception by using a real SearchResultHandler


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/7de2d08e
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/7de2d08e
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/7de2d08e

Branch: refs/heads/master
Commit: 7de2d08eb3ea65a17d3598ef12ea7c654f9b6f6e
Parents: 794416c
Author: fmartelli <fa...@gmail.com>
Authored: Thu Oct 11 10:31:54 2018 +0200
Committer: fmartelli <fa...@gmail.com>
Committed: Thu Oct 11 10:33:00 2018 +0200

----------------------------------------------------------------------
 .../provisioning/java/AsyncConnectorFacade.java | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/7de2d08e/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AsyncConnectorFacade.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AsyncConnectorFacade.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AsyncConnectorFacade.java
index 22cc25d..e778639 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AsyncConnectorFacade.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/AsyncConnectorFacade.java
@@ -28,9 +28,11 @@ import org.identityconnectors.framework.common.objects.ConnectorObject;
 import org.identityconnectors.framework.common.objects.ObjectClass;
 import org.identityconnectors.framework.common.objects.ObjectClassInfo;
 import org.identityconnectors.framework.common.objects.OperationOptions;
+import org.identityconnectors.framework.common.objects.SearchResult;
 import org.identityconnectors.framework.common.objects.SyncToken;
 import org.identityconnectors.framework.common.objects.Uid;
 import org.identityconnectors.framework.common.objects.filter.FilterBuilder;
+import org.identityconnectors.framework.spi.SearchResultsHandler;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.scheduling.annotation.Async;
@@ -107,10 +109,20 @@ public class AsyncConnectorFacade {
         connector.search(
                 objectClass,
                 ignoreCaseMatch ? FilterBuilder.equalsIgnoreCase(connObjectKey) : FilterBuilder.equalTo(connObjectKey),
-                connectorObject -> {
-                    objects[0] = connectorObject;
-                    return false;
-                }, options);
+                new SearchResultsHandler() {
+
+            @Override
+            public boolean handle(final ConnectorObject connectorObject) {
+                objects[0] = connectorObject;
+                return false;
+            }
+
+            @Override
+            public void handleResult(final SearchResult sr) {
+                // do nothing
+            }
+        },
+                options);
 
         return new AsyncResult<>(objects[0]);
     }


[2/2] syncope git commit: [SYNCOPE-1382] improves string check conditions

Posted by fm...@apache.org.
[SYNCOPE-1382] improves string check conditions


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/3c3c0087
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/3c3c0087
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/3c3c0087

Branch: refs/heads/master
Commit: 3c3c00877e8249f52f64aa3ba4b71c9635b27717
Parents: 7de2d08
Author: fmartelli <fa...@gmail.com>
Authored: Thu Oct 11 10:15:21 2018 +0200
Committer: fmartelli <fa...@gmail.com>
Committed: Thu Oct 11 10:33:13 2018 +0200

----------------------------------------------------------------------
 .../syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java       | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/3c3c0087/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
index 3ce2702..c6ebca1 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAAnySearchDAO.java
@@ -715,7 +715,7 @@ public class JPAAnySearchDAO extends AbstractAnySearchDAO {
         boolean ignoreCase = AttributeCond.Type.ILIKE == cond.getType() || AttributeCond.Type.IEQ == cond.getType();
 
         String column = (cond instanceof AnyCond) ? cond.getSchema() : svs.fieldName(schema.getType());
-        if (ignoreCase) {
+        if ((schema.getType() == AttrSchemaType.String || schema.getType() == AttrSchemaType.Enum) && ignoreCase) {
             column = "LOWER (" + column + ")";
         }
         if (!(cond instanceof AnyCond)) {
@@ -766,7 +766,8 @@ public class JPAAnySearchDAO extends AbstractAnySearchDAO {
                 } else {
                     query.append('=');
                 }
-                if (ignoreCase) {
+                if ((schema.getType() == AttrSchemaType.String 
+                        || schema.getType() == AttrSchemaType.Enum) && ignoreCase) {
                     query.append("LOWER(?").append(setParameter(parameters, attrValue.getValue())).append(')');
                 } else {
                     query.append('?').append(setParameter(parameters, attrValue.getValue()));