Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

All local classes extending default implementations such as DefaultPropagationActions, DefaultPullActions, DefaultPushActions, ... must be changed to implement the related interfaces, e.g. PropagationActions, PullActions, PushActions, ...

Pull correlation rules

For each custom JAVA PullCorrelationRule add a configuration class in package org.apache.syncope.common.lib.policy in common module of the project. For example, if you have a custom pull correlation rule class TestPullRule create a configuration class TestPullRuleConf like this:

Code Block
languagejava
titlepull_correlatio0n_rule_conf
package org.apache.syncope.common.lib.policy;

import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;

@XmlRootElement(name = "testPullRuleConf")
@XmlType
public class TestPullRuleConf extends AbstractCorrelationRuleConf implements PullCorrelationRuleConf {

private static final long serialVersionUID = 429126085793346273L;

}

Then reference the latter class from your correlation rule code with the specific annotation like this:

Code Block
languagejava
titlepull_correlation_rule
package org.apache.syncope.core.persistence.jpa.dao;

...

@PullCorrelationRuleConfClass(TestPullRuleConf.class)
public class TestPullRule implements PullCorrelationRule {

    @Override
    public SearchCond getSearchCond(SyncDelta syncDelta, Provision provision) {
        // your custom pull search condition
    }
}


Optional

Various methods now return Optional, rather than nullable values as before; for example:

...