1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.client.console.init;
20
21 import java.util.Optional;
22 import org.apache.syncope.common.lib.policy.PullCorrelationRuleConf;
23 import org.apache.syncope.common.lib.policy.PushCorrelationRuleConf;
24 import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider;
25 import org.springframework.core.type.filter.AssignableTypeFilter;
26
27 public class IdMClassPathScanImplementationContributor implements ClassPathScanImplementationContributor {
28
29 private static final long serialVersionUID = 4797723744170531042L;
30
31 @Override
32 public void extend(final ClassPathScanningCandidateComponentProvider scanner) {
33 scanner.addIncludeFilter(new AssignableTypeFilter(PullCorrelationRuleConf.class));
34 scanner.addIncludeFilter(new AssignableTypeFilter(PushCorrelationRuleConf.class));
35 }
36
37 @Override
38 public Optional<String> getLabel(final Class<?> clazz) {
39 if (PullCorrelationRuleConf.class.isAssignableFrom(clazz)) {
40 return Optional.of(PullCorrelationRuleConf.class.getName());
41 }
42 if (PushCorrelationRuleConf.class.isAssignableFrom(clazz)) {
43 return Optional.of(PushCorrelationRuleConf.class.getName());
44 }
45 return Optional.empty();
46 }
47 }