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/10/12 13:16:42 UTC

[1/2] syncope git commit: Getting some nice ConnId 1.5 features onboard

Repository: syncope
Updated Branches:
  refs/heads/2_1_X 44c8157d4 -> b9cb8e553
  refs/heads/master 5ca543938 -> f5a1b5b79


Getting some nice ConnId 1.5 features onboard


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

Branch: refs/heads/2_1_X
Commit: b9cb8e55328ba9924feb6214ab61a2ffae4f7a52
Parents: 44c8157
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Fri Oct 12 15:16:25 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Fri Oct 12 15:16:25 2018 +0200

----------------------------------------------------------------------
 .../core/provisioning/api/Connector.java        |  9 ++++++--
 .../provisioning/java/ConnectorFacadeProxy.java | 12 +++++++++--
 .../provisioning/java/ConnectorManager.java     | 22 ++++++++++++--------
 3 files changed, 30 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/b9cb8e55/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java
----------------------------------------------------------------------
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 e5a7939..09de13c 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
@@ -199,16 +199,21 @@ public interface Connector {
     Set<ObjectClassInfo> getObjectClassInfo();
 
     /**
-     * Validate a connector instance.
+     * Validate connector instance.
      */
     void validate();
 
     /**
-     * Check connection to resource.
+     * Check connection.
      */
     void test();
 
     /**
+     * Dispose of any resources associated with connector instance.
+     */
+    void dispose();
+
+    /**
      * Getter for active connector instance.
      *
      * @return active connector instance.

http://git-wip-us.apache.org/repos/asf/syncope/blob/b9cb8e55/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
index 1608d83..44dddaa 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
@@ -94,12 +94,15 @@ public class ConnectorFacadeProxy implements Connector {
     public ConnectorFacadeProxy(final ConnInstance connInstance) {
         this.connInstance = connInstance;
 
-        ConnIdBundleManager connIdBundleManager = ApplicationContextProvider.getBeanFactory().getBean(
-                ConnIdBundleManager.class);
+        ConnIdBundleManager connIdBundleManager =
+                ApplicationContextProvider.getBeanFactory().getBean(ConnIdBundleManager.class);
         ConnectorInfo info = connIdBundleManager.getConnectorInfo(connInstance).getRight();
 
         // create default configuration
         APIConfiguration apiConfig = info.createDefaultAPIConfiguration();
+        if (connInstance.getDisplayName() != null) {
+            apiConfig.setInstanceName(connInstance.getDisplayName());
+        }
         // enable filtered results handler in validation mode
         apiConfig.getResultsHandlerConfiguration().setFilteredResultsHandlerInValidationMode(true);
 
@@ -498,6 +501,11 @@ public class ConnectorFacadeProxy implements Connector {
     }
 
     @Override
+    public void dispose() {
+        connector.dispose();
+    }
+
+    @Override
     public ConnInstance getConnInstance() {
         return connInstance;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/b9cb8e55/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
index 32f22fb..0d4bcde 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
@@ -84,7 +84,7 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             registerConnector(resource);
         }
 
-        return (Connector) ApplicationContextProvider.getBeanFactory().getBean(getBeanName(resource));
+        return ApplicationContextProvider.getBeanFactory().getBean(getBeanName(resource), Connector.class);
     }
 
     @Override
@@ -113,21 +113,21 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
         Map<String, ConnConfProperty> overridable = new HashMap<>();
         Set<ConnConfProperty> conf = new HashSet<>();
 
-        for (ConnConfProperty prop : override.getConf()) {
+        override.getConf().forEach(prop -> {
             if (prop.isOverridable()) {
                 overridable.put(prop.getSchema().getName(), prop);
             } else {
                 conf.add(prop);
             }
-        }
+        });
 
         // add override properties
-        for (ConnConfProperty prop : confOverride) {
-            if (overridable.containsKey(prop.getSchema().getName()) && !prop.getValues().isEmpty()) {
-                conf.add(prop);
-                overridable.remove(prop.getSchema().getName());
-            }
-        }
+        confOverride.stream().
+                filter(prop -> overridable.containsKey(prop.getSchema().getName()) && !prop.getValues().isEmpty()).
+                forEach(prop -> {
+                    conf.add(prop);
+                    overridable.remove(prop.getSchema().getName());
+                });
 
         // add override properties not substituted
         conf.addAll(overridable.values());
@@ -190,6 +190,7 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             LOG.info("Registering resource-connector pair {}-{}", resource, resource.getConnector());
             try {
                 registerConnector(resource);
+
                 connectors++;
             } catch (Exception e) {
                 LOG.error("While registering resource-connector pair {}-{}", resource, resource.getConnector(), e);
@@ -207,7 +208,10 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             String beanName = getBeanName(resource);
             if (ApplicationContextProvider.getBeanFactory().containsSingleton(beanName)) {
                 LOG.info("Unegistering resource-connector pair {}-{}", resource, resource.getConnector());
+
+                getConnector(resource).dispose();
                 unregisterConnector(beanName);
+
                 connectors++;
             }
         }


[2/2] syncope git commit: Getting some nice ConnId 1.5 features onboard

Posted by il...@apache.org.
Getting some nice ConnId 1.5 features onboard


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

Branch: refs/heads/master
Commit: f5a1b5b791dc5e61a91b9819f01e8bfa248d311a
Parents: 5ca5439
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Fri Oct 12 15:16:25 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Fri Oct 12 15:16:35 2018 +0200

----------------------------------------------------------------------
 .../core/provisioning/api/Connector.java        |  9 ++++++--
 .../provisioning/java/ConnectorFacadeProxy.java | 12 +++++++++--
 .../provisioning/java/ConnectorManager.java     | 22 ++++++++++++--------
 3 files changed, 30 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/f5a1b5b7/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/Connector.java
----------------------------------------------------------------------
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 e5a7939..09de13c 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
@@ -199,16 +199,21 @@ public interface Connector {
     Set<ObjectClassInfo> getObjectClassInfo();
 
     /**
-     * Validate a connector instance.
+     * Validate connector instance.
      */
     void validate();
 
     /**
-     * Check connection to resource.
+     * Check connection.
      */
     void test();
 
     /**
+     * Dispose of any resources associated with connector instance.
+     */
+    void dispose();
+
+    /**
      * Getter for active connector instance.
      *
      * @return active connector instance.

http://git-wip-us.apache.org/repos/asf/syncope/blob/f5a1b5b7/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
index 1608d83..44dddaa 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
@@ -94,12 +94,15 @@ public class ConnectorFacadeProxy implements Connector {
     public ConnectorFacadeProxy(final ConnInstance connInstance) {
         this.connInstance = connInstance;
 
-        ConnIdBundleManager connIdBundleManager = ApplicationContextProvider.getBeanFactory().getBean(
-                ConnIdBundleManager.class);
+        ConnIdBundleManager connIdBundleManager =
+                ApplicationContextProvider.getBeanFactory().getBean(ConnIdBundleManager.class);
         ConnectorInfo info = connIdBundleManager.getConnectorInfo(connInstance).getRight();
 
         // create default configuration
         APIConfiguration apiConfig = info.createDefaultAPIConfiguration();
+        if (connInstance.getDisplayName() != null) {
+            apiConfig.setInstanceName(connInstance.getDisplayName());
+        }
         // enable filtered results handler in validation mode
         apiConfig.getResultsHandlerConfiguration().setFilteredResultsHandlerInValidationMode(true);
 
@@ -498,6 +501,11 @@ public class ConnectorFacadeProxy implements Connector {
     }
 
     @Override
+    public void dispose() {
+        connector.dispose();
+    }
+
+    @Override
     public ConnInstance getConnInstance() {
         return connInstance;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/f5a1b5b7/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
index 32f22fb..0d4bcde 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorManager.java
@@ -84,7 +84,7 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             registerConnector(resource);
         }
 
-        return (Connector) ApplicationContextProvider.getBeanFactory().getBean(getBeanName(resource));
+        return ApplicationContextProvider.getBeanFactory().getBean(getBeanName(resource), Connector.class);
     }
 
     @Override
@@ -113,21 +113,21 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
         Map<String, ConnConfProperty> overridable = new HashMap<>();
         Set<ConnConfProperty> conf = new HashSet<>();
 
-        for (ConnConfProperty prop : override.getConf()) {
+        override.getConf().forEach(prop -> {
             if (prop.isOverridable()) {
                 overridable.put(prop.getSchema().getName(), prop);
             } else {
                 conf.add(prop);
             }
-        }
+        });
 
         // add override properties
-        for (ConnConfProperty prop : confOverride) {
-            if (overridable.containsKey(prop.getSchema().getName()) && !prop.getValues().isEmpty()) {
-                conf.add(prop);
-                overridable.remove(prop.getSchema().getName());
-            }
-        }
+        confOverride.stream().
+                filter(prop -> overridable.containsKey(prop.getSchema().getName()) && !prop.getValues().isEmpty()).
+                forEach(prop -> {
+                    conf.add(prop);
+                    overridable.remove(prop.getSchema().getName());
+                });
 
         // add override properties not substituted
         conf.addAll(overridable.values());
@@ -190,6 +190,7 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             LOG.info("Registering resource-connector pair {}-{}", resource, resource.getConnector());
             try {
                 registerConnector(resource);
+
                 connectors++;
             } catch (Exception e) {
                 LOG.error("While registering resource-connector pair {}-{}", resource, resource.getConnector(), e);
@@ -207,7 +208,10 @@ public class ConnectorManager implements ConnectorRegistry, ConnectorFactory, Sy
             String beanName = getBeanName(resource);
             if (ApplicationContextProvider.getBeanFactory().containsSingleton(beanName)) {
                 LOG.info("Unegistering resource-connector pair {}-{}", resource, resource.getConnector());
+
+                getConnector(resource).dispose();
                 unregisterConnector(beanName);
+
                 connectors++;
             }
         }