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 2021/04/22 12:15:44 UTC

[syncope] branch 2_1_X updated: [SYNCOPE-1631] Methods' argument added

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

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


The following commit(s) were added to refs/heads/2_1_X by this push:
     new 63c70e7  [SYNCOPE-1631] Methods' argument added
63c70e7 is described below

commit 63c70e7b109eacff87ac30021f2c13b14fa987c8
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Thu Apr 22 14:12:51 2021 +0200

    [SYNCOPE-1631] Methods' argument added
---
 .../console/implementations/MyReconFilterBuilder.groovy      |  6 ++++--
 .../org/apache/syncope/core/provisioning/api/Connector.java  |  4 ++--
 .../api/pushpull/ConstantReconFilterBuilder.java             |  3 ++-
 .../api/pushpull/KeyValueReconFilterBuilder.java             |  3 ++-
 .../core/provisioning/api/pushpull/ReconFilterBuilder.java   |  5 +++--
 .../src/test/resources/TestReconFilterBuilder.groovy         | 12 ++++++------
 6 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/implementations/MyReconFilterBuilder.groovy b/client/console/src/main/resources/org/apache/syncope/client/console/implementations/MyReconFilterBuilder.groovy
index b19b88e..7c07828 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/implementations/MyReconFilterBuilder.groovy
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/implementations/MyReconFilterBuilder.groovy
@@ -18,13 +18,15 @@
  */
 import groovy.transform.CompileStatic
 import org.apache.syncope.core.provisioning.api.pushpull.ReconFilterBuilder
+import org.identityconnectors.framework.common.objects.ObjectClass
 import org.identityconnectors.framework.common.objects.filter.Filter
+import org.identityconnectors.framework.impl.api.local.operations.FilteredResultsHandler
 
 @CompileStatic
 class MyReconFilterBuilder implements ReconFilterBuilder {
   
   @Override
-  Filter build() {
-    return PASS_THROUGH;
+  Filter build(ObjectClass objectClass) {
+    return new FilteredResultsHandler.PassThroughFilter()
   }
 }
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java
index 1c11784..8230397 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java
@@ -130,8 +130,8 @@ public interface Connector {
         Filter filter = null;
         OperationOptions actualOptions = options;
         if (filterBuilder != null) {
-            filter = filterBuilder.build();
-            actualOptions = filterBuilder.build(actualOptions);
+            filter = filterBuilder.build(objectClass);
+            actualOptions = filterBuilder.build(objectClass, actualOptions);
         }
 
         search(objectClass, filter, new SearchResultsHandler() {
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ConstantReconFilterBuilder.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ConstantReconFilterBuilder.java
index d980602..e5490b8 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ConstantReconFilterBuilder.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ConstantReconFilterBuilder.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.core.provisioning.api.pushpull;
 
+import org.identityconnectors.framework.common.objects.ObjectClass;
 import org.identityconnectors.framework.common.objects.filter.Filter;
 
 public class ConstantReconFilterBuilder implements ReconFilterBuilder {
@@ -29,7 +30,7 @@ public class ConstantReconFilterBuilder implements ReconFilterBuilder {
     }
 
     @Override
-    public Filter build() {
+    public Filter build(final ObjectClass objectClass) {
         return filter;
     }
 }
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/KeyValueReconFilterBuilder.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/KeyValueReconFilterBuilder.java
index 1b5d349..4d93aa5 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/KeyValueReconFilterBuilder.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/KeyValueReconFilterBuilder.java
@@ -19,6 +19,7 @@
 package org.apache.syncope.core.provisioning.api.pushpull;
 
 import org.identityconnectors.framework.common.objects.AttributeBuilder;
+import org.identityconnectors.framework.common.objects.ObjectClass;
 import org.identityconnectors.framework.common.objects.filter.Filter;
 import org.identityconnectors.framework.common.objects.filter.FilterBuilder;
 
@@ -34,7 +35,7 @@ public class KeyValueReconFilterBuilder implements ReconFilterBuilder {
     }
 
     @Override
-    public Filter build() {
+    public Filter build(final ObjectClass objectClass) {
         return FilterBuilder.equalTo(AttributeBuilder.build(key, value));
     }
 }
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconFilterBuilder.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconFilterBuilder.java
index 50bc90f..1e2bdf0 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconFilterBuilder.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconFilterBuilder.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.core.provisioning.api.pushpull;
 
+import org.identityconnectors.framework.common.objects.ObjectClass;
 import org.identityconnectors.framework.common.objects.OperationOptions;
 import org.identityconnectors.framework.common.objects.filter.Filter;
 import org.identityconnectors.framework.impl.api.local.operations.FilteredResultsHandler;
@@ -28,11 +29,11 @@ import org.identityconnectors.framework.impl.api.local.operations.FilteredResult
  */
 public interface ReconFilterBuilder {
 
-    default Filter build() {
+    default Filter build(final ObjectClass objectClass) {
         return new FilteredResultsHandler.PassThroughFilter();
     }
 
-    default OperationOptions build(final OperationOptions initialOptions) {
+    default OperationOptions build(final ObjectClass objectClass, final OperationOptions initialOptions) {
         return initialOptions;
     }
 }
diff --git a/fit/core-reference/src/test/resources/TestReconFilterBuilder.groovy b/fit/core-reference/src/test/resources/TestReconFilterBuilder.groovy
index b7ebe49..99a6412 100644
--- a/fit/core-reference/src/test/resources/TestReconFilterBuilder.groovy
+++ b/fit/core-reference/src/test/resources/TestReconFilterBuilder.groovy
@@ -16,11 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-import org.identityconnectors.framework.common.objects.AttributeBuilder;
-import org.identityconnectors.framework.common.objects.filter.Filter;
-import org.identityconnectors.framework.common.objects.filter.FilterBuilder;
+import org.identityconnectors.framework.common.objects.AttributeBuilder
+import org.identityconnectors.framework.common.objects.ObjectClass
+import org.identityconnectors.framework.common.objects.filter.Filter
+import org.identityconnectors.framework.common.objects.filter.FilterBuilder
+import org.apache.syncope.core.provisioning.api.pushpull.ReconFilterBuilder
 import groovy.transform.CompileStatic
-import org.apache.syncope.core.provisioning.api.pushpull.ReconFilterBuilder;
 
 @CompileStatic
 class TestReconFilterBuilder implements ReconFilterBuilder {
@@ -28,8 +29,7 @@ class TestReconFilterBuilder implements ReconFilterBuilder {
   private static final Filter EQUALS = FilterBuilder.equalTo(AttributeBuilder.build("SURNAME", "Rossi"));
 
   @Override
-  Filter build() {
+  Filter build(ObjectClass objectClass) {
     return EQUALS;
   }
-
 }