Search in sources :

Example 1 with JEXLItemTransformer

use of org.apache.syncope.core.provisioning.api.data.JEXLItemTransformer in project syncope by apache.

the class MappingUtils method getItemTransformers.

public static List<ItemTransformer> getItemTransformers(final Item item) {
    List<ItemTransformer> result = new ArrayList<>();
    // First consider the JEXL transformation expressions
    if (StringUtils.isNotBlank(item.getPropagationJEXLTransformer()) || StringUtils.isNotBlank(item.getPullJEXLTransformer())) {
        JEXLItemTransformer jexlTransformer = (JEXLItemTransformer) ApplicationContextProvider.getBeanFactory().createBean(JEXLItemTransformerImpl.class, AbstractBeanDefinition.AUTOWIRE_BY_NAME, false);
        jexlTransformer.setPropagationJEXL(item.getPropagationJEXLTransformer());
        jexlTransformer.setPullJEXL(item.getPullJEXLTransformer());
        result.add(jexlTransformer);
    }
    // Then other custom transformers
    item.getTransformers().forEach(impl -> {
        try {
            result.add(ImplementationManager.build(impl));
        } catch (Exception e) {
            LOG.error("While building {}", impl, e);
        }
    });
    return result;
}
Also used : JEXLItemTransformer(org.apache.syncope.core.provisioning.api.data.JEXLItemTransformer) ItemTransformer(org.apache.syncope.core.provisioning.api.data.ItemTransformer) JEXLItemTransformer(org.apache.syncope.core.provisioning.api.data.JEXLItemTransformer) ArrayList(java.util.ArrayList) JEXLItemTransformerImpl(org.apache.syncope.core.provisioning.java.data.JEXLItemTransformerImpl)

Aggregations

ArrayList (java.util.ArrayList)1 ItemTransformer (org.apache.syncope.core.provisioning.api.data.ItemTransformer)1 JEXLItemTransformer (org.apache.syncope.core.provisioning.api.data.JEXLItemTransformer)1 JEXLItemTransformerImpl (org.apache.syncope.core.provisioning.java.data.JEXLItemTransformerImpl)1