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/05/15 14:29:35 UTC

[2/2] syncope git commit: Various cleanings

Various cleanings


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

Branch: refs/heads/2_0_X
Commit: cf3c722494c996ce3fc257c844d71a8d1393bb4b
Parents: c54687c
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Tue May 15 16:29:27 2018 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Tue May 15 16:29:27 2018 +0200

----------------------------------------------------------------------
 .../core/persistence/api/entity/AnyUtils.java   |  3 --
 .../persistence/jpa/entity/JPAAnyUtils.java     | 18 -------
 .../jpa/validation/entity/AnyValidator.java     |  2 +-
 .../provisioning/java/DerAttrHandlerImpl.java   | 12 ++---
 .../provisioning/java/VirAttrHandlerImpl.java   | 12 ++---
 .../java/data/AbstractAnyDataBinder.java        |  2 +-
 .../AbstractPropagationTaskExecutor.java        | 10 ++--
 .../propagation/AzurePropagationActions.java    | 56 +++++++++-----------
 .../GoogleAppsPropagationActions.java           | 24 ++++-----
 .../propagation/PropagationManagerImpl.java     |  2 +-
 .../propagation/SCIMv11PropagationActions.java  |  2 -
 11 files changed, 57 insertions(+), 86 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/entity/AnyUtils.java
----------------------------------------------------------------------
diff --git a/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/entity/AnyUtils.java b/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/entity/AnyUtils.java
index e59350e..12063a5 100644
--- a/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/entity/AnyUtils.java
+++ b/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/entity/AnyUtils.java
@@ -21,7 +21,6 @@ package org.apache.syncope.core.persistence.api.entity;
 import java.util.Set;
 import org.apache.syncope.common.lib.to.AnyTO;
 import org.apache.syncope.common.lib.types.AnyTypeKind;
-import org.apache.syncope.core.persistence.api.dao.AllowedSchemas;
 import org.apache.syncope.core.persistence.api.dao.AnyDAO;
 import org.apache.syncope.core.persistence.api.entity.resource.ExternalResource;
 
@@ -52,6 +51,4 @@ public interface AnyUtils {
     <A extends Any<?>> AnyDAO<A> dao();
 
     Set<ExternalResource> getAllResources(Any<?> any);
-
-    <S extends Schema> AllowedSchemas<S> getAllowedSchemas(Any<?> any, Class<S> reference);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAAnyUtils.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAAnyUtils.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAAnyUtils.java
index 15fa17c..fea7228 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAAnyUtils.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAAnyUtils.java
@@ -31,7 +31,6 @@ import org.apache.syncope.common.lib.to.AnyTO;
 import org.apache.syncope.common.lib.to.GroupTO;
 import org.apache.syncope.common.lib.to.UserTO;
 import org.apache.syncope.common.lib.types.AnyTypeKind;
-import org.apache.syncope.core.persistence.api.dao.AllowedSchemas;
 import org.apache.syncope.core.persistence.api.dao.AnyDAO;
 import org.apache.syncope.core.persistence.api.dao.AnyObjectDAO;
 import org.apache.syncope.core.persistence.api.dao.GroupDAO;
@@ -41,7 +40,6 @@ import org.apache.syncope.core.persistence.api.entity.AnyUtils;
 import org.apache.syncope.core.persistence.api.entity.PlainAttr;
 import org.apache.syncope.core.persistence.api.entity.PlainAttrUniqueValue;
 import org.apache.syncope.core.persistence.api.entity.PlainAttrValue;
-import org.apache.syncope.core.persistence.api.entity.Schema;
 import org.apache.syncope.core.persistence.api.entity.anyobject.AnyObject;
 import org.apache.syncope.core.persistence.api.entity.group.Group;
 import org.apache.syncope.core.persistence.api.entity.resource.ExternalResource;
@@ -376,20 +374,4 @@ public class JPAAnyUtils implements AnyUtils {
 
         return resources;
     }
-
-    @Transactional(readOnly = true)
-    @Override
-    public <S extends Schema> AllowedSchemas<S> getAllowedSchemas(final Any<?> any, final Class<S> reference) {
-        AllowedSchemas<S> result = null;
-
-        if (any instanceof User) {
-            result = userDAO.findAllowedSchemas((User) any, reference);
-        } else if (any instanceof Group) {
-            result = groupDAO.findAllowedSchemas((Group) any, reference);
-        } else if (any instanceof AnyObject) {
-            result = anyObjectDAO.findAllowedSchemas((AnyObject) any, reference);
-        }
-
-        return result;
-    }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/validation/entity/AnyValidator.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/validation/entity/AnyValidator.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/validation/entity/AnyValidator.java
index 37e227f..fba6674 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/validation/entity/AnyValidator.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/validation/entity/AnyValidator.java
@@ -58,7 +58,7 @@ public class AnyValidator extends AbstractValidator<AnyCheck, Any> {
 
         if (!(any instanceof Conf)) {
             AllowedSchemas<PlainSchema> allowedPlainSchemas = new JPAAnyUtilsFactory().
-                    getInstance(any.getType().getKind()).getAllowedSchemas(any, PlainSchema.class);
+                    getInstance(any.getType().getKind()).dao().findAllowedSchemas(any, PlainSchema.class);
 
             for (PlainAttr<?> attr : ((Any<?>) any).getPlainAttrs()) {
                 if (attr != null && !allowedPlainSchemas.forSelfContains(attr.getSchema().getKey())) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/DerAttrHandlerImpl.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/DerAttrHandlerImpl.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/DerAttrHandlerImpl.java
index 42990d8..1673372 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/DerAttrHandlerImpl.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/DerAttrHandlerImpl.java
@@ -62,8 +62,8 @@ public class DerAttrHandlerImpl implements DerAttrHandler {
 
     @Override
     public String getValue(final Any<?> any, final DerSchema schema) {
-        if (!anyUtilsFactory.getInstance(any).
-                getAllowedSchemas(any, DerSchema.class).forSelfContains(schema)) {
+        if (!anyUtilsFactory.getInstance(any).dao().
+                findAllowedSchemas(any, DerSchema.class).forSelfContains(schema)) {
 
             LOG.debug("{} not allowed for {}", schema, any);
             return null;
@@ -74,8 +74,8 @@ public class DerAttrHandlerImpl implements DerAttrHandler {
 
     @Override
     public String getValue(final Any<?> any, final Membership<?> membership, final DerSchema schema) {
-        if (!anyUtilsFactory.getInstance(any).
-                getAllowedSchemas(any, DerSchema.class).getForMembership(membership.getRightEnd()).contains(schema)) {
+        if (!anyUtilsFactory.getInstance(any).dao().
+                findAllowedSchemas(any, DerSchema.class).getForMembership(membership.getRightEnd()).contains(schema)) {
 
             LOG.debug("{} not allowed for {}", schema, any);
             return null;
@@ -88,7 +88,7 @@ public class DerAttrHandlerImpl implements DerAttrHandler {
     public Map<DerSchema, String> getValues(final Any<?> any) {
         return getValues(
                 any,
-                anyUtilsFactory.getInstance(any).getAllowedSchemas(any, DerSchema.class).getForSelf());
+                anyUtilsFactory.getInstance(any).dao().findAllowedSchemas(any, DerSchema.class).getForSelf());
     }
 
     private Map<DerSchema, String> getValues(
@@ -114,7 +114,7 @@ public class DerAttrHandlerImpl implements DerAttrHandler {
         return getValues(
                 any,
                 membership,
-                anyUtilsFactory.getInstance(any).getAllowedSchemas(any, DerSchema.class).
+                anyUtilsFactory.getInstance(any).dao().findAllowedSchemas(any, DerSchema.class).
                         getForMembership(membership.getRightEnd()));
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/VirAttrHandlerImpl.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/VirAttrHandlerImpl.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/VirAttrHandlerImpl.java
index a074848..7f5cfee 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/VirAttrHandlerImpl.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/VirAttrHandlerImpl.java
@@ -147,8 +147,8 @@ public class VirAttrHandlerImpl implements VirAttrHandler {
 
     @Override
     public List<String> getValues(final Any<?> any, final VirSchema schema) {
-        if (!anyUtilsFactory.getInstance(any).
-                getAllowedSchemas(any, VirSchema.class).forSelfContains(schema)) {
+        if (!anyUtilsFactory.getInstance(any).dao().
+                findAllowedSchemas(any, VirSchema.class).forSelfContains(schema)) {
 
             LOG.debug("{} not allowed for {}", schema, any);
             return Collections.emptyList();
@@ -159,8 +159,8 @@ public class VirAttrHandlerImpl implements VirAttrHandler {
 
     @Override
     public List<String> getValues(final Any<?> any, final Membership<?> membership, final VirSchema schema) {
-        if (!anyUtilsFactory.getInstance(any).
-                getAllowedSchemas(any, VirSchema.class).getForMembership(membership.getRightEnd()).contains(schema)) {
+        if (!anyUtilsFactory.getInstance(any).dao().
+                findAllowedSchemas(any, VirSchema.class).getForMembership(membership.getRightEnd()).contains(schema)) {
 
             LOG.debug("{} not allowed for {}", schema, any);
             return Collections.emptyList();
@@ -173,14 +173,14 @@ public class VirAttrHandlerImpl implements VirAttrHandler {
     public Map<VirSchema, List<String>> getValues(final Any<?> any) {
         return getValues(
                 any,
-                anyUtilsFactory.getInstance(any).getAllowedSchemas(any, VirSchema.class).getForSelf());
+                anyUtilsFactory.getInstance(any).dao().findAllowedSchemas(any, VirSchema.class).getForSelf());
     }
 
     @Override
     public Map<VirSchema, List<String>> getValues(final Any<?> any, final Membership<?> membership) {
         return getValues(
                 any,
-                anyUtilsFactory.getInstance(any).getAllowedSchemas(any, VirSchema.class).
+                anyUtilsFactory.getInstance(any).dao().findAllowedSchemas(any, VirSchema.class).
                         getForMembership(membership.getRightEnd()));
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/AbstractAnyDataBinder.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/AbstractAnyDataBinder.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/AbstractAnyDataBinder.java
index 5a243d9..6057749 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/AbstractAnyDataBinder.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/AbstractAnyDataBinder.java
@@ -261,7 +261,7 @@ abstract class AbstractAnyDataBinder {
         SyncopeClientException reqValMissing = SyncopeClientException.build(ClientExceptionType.RequiredValuesMissing);
 
         // Check if there is some mandatory schema defined for which no value has been provided
-        AllowedSchemas<PlainSchema> allowedPlainSchemas = anyUtils.getAllowedSchemas(any, PlainSchema.class);
+        AllowedSchemas<PlainSchema> allowedPlainSchemas = anyUtils.dao().findAllowedSchemas(any, PlainSchema.class);
         for (PlainSchema schema : allowedPlainSchemas.getForSelf()) {
             checkMandatory(schema, any.getPlainAttr(schema.getKey()), any, reqValMissing);
         }

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AbstractPropagationTaskExecutor.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AbstractPropagationTaskExecutor.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AbstractPropagationTaskExecutor.java
index 33255bb..3c45321 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AbstractPropagationTaskExecutor.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AbstractPropagationTaskExecutor.java
@@ -104,22 +104,22 @@ public abstract class AbstractPropagationTaskExecutor implements PropagationTask
     protected ConnObjectUtils connObjectUtils;
 
     /**
-     * Any object DAO.
+     * User DAO.
      */
     @Autowired
-    protected AnyObjectDAO anyObjectDAO;
+    protected UserDAO userDAO;
 
     /**
      * User DAO.
      */
     @Autowired
-    protected UserDAO userDAO;
+    protected GroupDAO groupDAO;
 
     /**
-     * User DAO.
+     * Any object DAO.
      */
     @Autowired
-    protected GroupDAO groupDAO;
+    protected AnyObjectDAO anyObjectDAO;
 
     /**
      * Task DAO.

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AzurePropagationActions.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AzurePropagationActions.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AzurePropagationActions.java
index 2fb5c63..912d71f 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AzurePropagationActions.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/AzurePropagationActions.java
@@ -74,11 +74,11 @@ public class AzurePropagationActions extends DefaultPropagationActions {
     @Autowired
     private AnyUtilsFactory anyUtilsFactory;
 
-    private static final String USER_MAIL_NICKNAME = "mailNickname";
-
-    private static final String GROUP_MAIL_NICKNAME = "mailNickname";
+    protected String getEmailAttrName() {
+        return "mailNickname";
+    }
 
-    protected String getAzureIdSchema() {
+    protected String getAzureUserIdSchema() {
         return "AzureUserId";
     }
 
@@ -97,10 +97,10 @@ public class AzurePropagationActions extends DefaultPropagationActions {
 
         switch (task.getAnyTypeKind()) {
             case USER:
-                setName(task, USER_MAIL_NICKNAME);
+                setName(task);
                 break;
             case GROUP:
-                setName(task, GROUP_MAIL_NICKNAME);
+                setName(task);
                 break;
             default:
                 LOG.debug("Not about user, or group, not doing anything");
@@ -108,6 +108,23 @@ public class AzurePropagationActions extends DefaultPropagationActions {
         }
     }
 
+    private void setName(final PropagationTask task) {
+        Set<Attribute> attrs = new HashSet<>(task.getAttributes());
+
+        if (AttributeUtil.find(getEmailAttrName(), attrs) == null) {
+            LOG.warn("Can't find {} attribute to set as __NAME__ attribute value, skipping...", getEmailAttrName());
+            return;
+        }
+
+        Name name = AttributeUtil.getNameFromAttributes(attrs);
+        if (name != null) {
+            attrs.remove(name);
+        }
+        attrs.add(new Name(AttributeUtil.find(getEmailAttrName(), attrs).getValue().get(0).toString()));
+
+        task.setAttributes(attrs);
+    }
+
     @Transactional
     @Override
     public void after(final PropagationTask task, final TaskExec execution, final ConnectorObject afterObj) {
@@ -116,7 +133,6 @@ public class AzurePropagationActions extends DefaultPropagationActions {
         }
 
         if (AnyTypeKind.USER.equals(task.getAnyTypeKind())) {
-
             User user = userDAO.find(task.getEntityKey());
             if (user == null) {
                 LOG.error("Could not find user {}, skipping", task.getEntityKey());
@@ -125,12 +141,12 @@ public class AzurePropagationActions extends DefaultPropagationActions {
                 AnyUtils anyUtils = anyUtilsFactory.getInstance(user);
 
                 // Azure User ID
-                PlainSchema azureId = plainSchemaDAO.find(getAzureIdSchema());
+                PlainSchema azureId = plainSchemaDAO.find(getAzureUserIdSchema());
                 if (azureId == null) {
-                    LOG.error("Could not find schema {}, skipping", getAzureIdSchema());
+                    LOG.error("Could not find schema {}, skipping", getAzureUserIdSchema());
                 } else {
                     // set back the __UID__ received by Azure
-                    UPlainAttr attr = user.getPlainAttr(getAzureIdSchema());
+                    UPlainAttr attr = user.getPlainAttr(getAzureUserIdSchema());
                     if (attr == null) {
                         attr = entityFactory.newEntity(UPlainAttr.class);
                         attr.setSchema(azureId);
@@ -155,7 +171,6 @@ public class AzurePropagationActions extends DefaultPropagationActions {
                 }
             }
         } else if (AnyTypeKind.GROUP.equals(task.getAnyTypeKind())) {
-
             Group group = groupDAO.find(task.getEntityKey());
             if (group == null) {
                 LOG.error("Could not find group {}, skipping", task.getEntityKey());
@@ -195,23 +210,4 @@ public class AzurePropagationActions extends DefaultPropagationActions {
             }
         }
     }
-
-    private void setName(final PropagationTask task, final String attributeName) {
-        Set<Attribute> attributes = new HashSet<>(task.getAttributes());
-
-        if (AttributeUtil.find(attributeName, attributes) == null) {
-            LOG.warn("Can't find {} attribute to set as __NAME__ attribute value, skipping...", attributeName);
-            return;
-        }
-
-        Name name = AttributeUtil.getNameFromAttributes(attributes);
-        if (name != null) {
-            attributes.remove(name);
-        }
-        attributes.add(
-                new Name(AttributeUtil.find(attributeName, attributes).getValue().get(0).toString()));
-
-        task.setAttributes(attributes);
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/GoogleAppsPropagationActions.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/GoogleAppsPropagationActions.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/GoogleAppsPropagationActions.java
index 68df61b..a83360e 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/GoogleAppsPropagationActions.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/GoogleAppsPropagationActions.java
@@ -72,8 +72,8 @@ public class GoogleAppsPropagationActions extends DefaultPropagationActions {
     @Autowired
     private AnyUtilsFactory anyUtilsFactory;
 
-    protected String getEmailSchema() {
-        return "email";
+    protected String getEmailAttrName() {
+        return "emails";
     }
 
     protected String getGoogleAppsIdSchema() {
@@ -92,17 +92,16 @@ public class GoogleAppsPropagationActions extends DefaultPropagationActions {
 
         Set<Attribute> attrs = new HashSet<>(task.getAttributes());
 
-        // ensure to set __NAME__ value to user's email (e.g. primary e-mail address)
-        User user = userDAO.find(task.getEntityKey());
-        if (user == null) {
-            LOG.error("Could not find user {}, skipping", task.getEntityKey());
-        } else {
-            Name name = AttributeUtil.getNameFromAttributes(attrs);
-            if (name != null) {
-                attrs.remove(name);
-            }
-            attrs.add(new Name(user.getPlainAttr(getEmailSchema()).getValuesAsStrings().get(0)));
+        if (AttributeUtil.find(getEmailAttrName(), attrs) == null) {
+            LOG.warn("Can't find {} attribute to set as __NAME__ attribute value, skipping...", getEmailAttrName());
+            return;
+        }
+
+        Name name = AttributeUtil.getNameFromAttributes(attrs);
+        if (name != null) {
+            attrs.remove(name);
         }
+        attrs.add(new Name(AttributeUtil.find(getEmailAttrName(), attrs).getValue().get(0).toString()));
 
         task.setAttributes(attrs);
     }
@@ -154,5 +153,4 @@ public class GoogleAppsPropagationActions extends DefaultPropagationActions {
             }
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/PropagationManagerImpl.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/PropagationManagerImpl.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/PropagationManagerImpl.java
index f7abc2d..df4183a 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/PropagationManagerImpl.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/PropagationManagerImpl.java
@@ -346,7 +346,7 @@ public class PropagationManagerImpl implements PropagationManager {
                 LOG.warn("Ignoring invalid {} {}", VirSchema.class.getSimpleName(), vAttr.getSchema());
             } else if (schema.isReadonly()) {
                 LOG.warn("Ignoring read-only {} {}", VirSchema.class.getSimpleName(), vAttr.getSchema());
-            } else if (anyUtilsFactory.getInstance(any).getAllowedSchemas(any, VirSchema.class).contains(schema)
+            } else if (anyUtilsFactory.getInstance(any).dao().findAllowedSchemas(any, VirSchema.class).contains(schema)
                     && virtualResources.contains(schema.getProvision().getResource().getKey())) {
 
                 Set<Attribute> values = vAttrMap.get(schema.getProvision().getResource().getKey());

http://git-wip-us.apache.org/repos/asf/syncope/blob/cf3c7224/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/SCIMv11PropagationActions.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/SCIMv11PropagationActions.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/SCIMv11PropagationActions.java
index d01ce0d..de30f2e 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/SCIMv11PropagationActions.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/propagation/SCIMv11PropagationActions.java
@@ -74,7 +74,6 @@ public class SCIMv11PropagationActions extends DefaultPropagationActions {
         }
 
         if (AnyTypeKind.USER.equals(task.getAnyTypeKind())) {
-
             User user = userDAO.find(task.getEntityKey());
             if (user == null) {
                 LOG.error("Could not find user {}, skipping", task.getEntityKey());
@@ -114,5 +113,4 @@ public class SCIMv11PropagationActions extends DefaultPropagationActions {
             }
         }
     }
-
 }