This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git
The following commit(s) were added to refs/heads/master by this push:
new 79c1abbd8c Realigning ClassPathScanImplementationLookup with
IdRepoImplementationType and IdMImplementationType
79c1abbd8c is described below
commit 79c1abbd8ccdd7aa1acbfc3faca71dca12f856ab
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Tue Dec 24 13:20:15 2024 +0100
Realigning ClassPathScanImplementationLookup with IdRepoImplementationType
and IdMImplementationType
---
.../init/ClassPathScanImplementationLookup.java | 83 ++++++++++++----------
pom.xml | 6 +-
2 files changed, 49 insertions(+), 40 deletions(-)
diff --git
a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/init/ClassPathScanImplementationLookup.java
b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/init/ClassPathScanImplementationLookup.java
index fa07898e8d..176d55757d 100644
---
a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/init/ClassPathScanImplementationLookup.java
+++
b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/init/ClassPathScanImplementationLookup.java
@@ -36,14 +36,17 @@ import
org.apache.syncope.common.lib.types.IdMImplementationType;
import org.apache.syncope.common.lib.types.IdRepoImplementationType;
import org.apache.syncope.common.lib.types.ImplementationTypesHolder;
import org.apache.syncope.core.logic.api.LogicActions;
+import org.apache.syncope.core.persistence.api.attrvalue.DropdownValueProvider;
import
org.apache.syncope.core.persistence.api.attrvalue.PlainAttrValueValidator;
import org.apache.syncope.core.provisioning.api.ImplementationLookup;
+import org.apache.syncope.core.provisioning.api.LiveSyncDeltaMapper;
import org.apache.syncope.core.provisioning.api.ProvisionSorter;
import org.apache.syncope.core.provisioning.api.data.ItemTransformer;
import org.apache.syncope.core.provisioning.api.job.SchedTaskJobDelegate;
import org.apache.syncope.core.provisioning.api.job.report.ReportConfClass;
import org.apache.syncope.core.provisioning.api.job.report.ReportJobDelegate;
import org.apache.syncope.core.provisioning.api.macro.Command;
+import org.apache.syncope.core.provisioning.api.macro.MacroActions;
import
org.apache.syncope.core.provisioning.api.notification.RecipientsProvider;
import org.apache.syncope.core.provisioning.api.propagation.PropagationActions;
import org.apache.syncope.core.provisioning.api.pushpull.InboundActions;
@@ -140,15 +143,7 @@ public class ClassPathScanImplementationLookup implements
ImplementationLookup {
continue;
}
- if (ReportJobDelegate.class.isAssignableFrom(clazz)) {
- ReportConfClass annotation =
clazz.getAnnotation(ReportConfClass.class);
- if (annotation == null) {
- LOG.warn("Found Report {} without declared
configuration", clazz.getName());
- } else {
-
classNames.get(IdRepoImplementationType.REPORT_DELEGATE).add(clazz.getName());
- reportJobDelegateClasses.put(annotation.value(),
(Class<? extends ReportJobDelegate>) clazz);
- }
- } else if (AccountRule.class.isAssignableFrom(clazz)) {
+ if (AccountRule.class.isAssignableFrom(clazz)) {
AccountRuleConfClass annotation =
clazz.getAnnotation(AccountRuleConfClass.class);
if (annotation == null) {
LOG.warn("Found account policy rule {} without
declared configuration", clazz.getName());
@@ -164,6 +159,46 @@ public class ClassPathScanImplementationLookup implements
ImplementationLookup {
classNames.get(IdRepoImplementationType.PASSWORD_RULE).add(clazz.getName());
passwordRuleClasses.put(annotation.value(), (Class<?
extends PasswordRule>) clazz);
}
+ } else if (SchedTaskJobDelegate.class.isAssignableFrom(clazz)
+ && !PullJobDelegate.class.isAssignableFrom(clazz)
+ && !PushJobDelegate.class.isAssignableFrom(clazz)
+ &&
!GroupMemberProvisionTaskJobDelegate.class.isAssignableFrom(clazz)
+ && !MacroJobDelegate.class.isAssignableFrom(clazz)
+ && !LiveSyncJobDelegate.class.isAssignableFrom(clazz))
{
+
+
classNames.get(IdRepoImplementationType.TASKJOB_DELEGATE).add(bd.getBeanClassName());
+ } else if (ReportJobDelegate.class.isAssignableFrom(clazz)) {
+ ReportConfClass annotation =
clazz.getAnnotation(ReportConfClass.class);
+ if (annotation == null) {
+ LOG.warn("Found Report {} without declared
configuration", clazz.getName());
+ } else {
+
classNames.get(IdRepoImplementationType.REPORT_DELEGATE).add(clazz.getName());
+ reportJobDelegateClasses.put(annotation.value(),
(Class<? extends ReportJobDelegate>) clazz);
+ }
+ } else if (LogicActions.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.LOGIC_ACTIONS).add(bd.getBeanClassName());
+ } else if (MacroActions.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.MACRO_ACTIONS).add(bd.getBeanClassName());
+ } else if
(PlainAttrValueValidator.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.ATTR_VALUE_VALIDATOR).add(bd.getBeanClassName());
+ } else if
(DropdownValueProvider.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.DROPDOWN_VALUE_PROVIDER).add(bd.getBeanClassName());
+ } else if (Command.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.COMMAND).add(bd.getBeanClassName());
+ } else if (RecipientsProvider.class.isAssignableFrom(clazz)) {
+
classNames.get(IdRepoImplementationType.RECIPIENTS_PROVIDER).add(bd.getBeanClassName());
+ } else if (ItemTransformer.class.isAssignableFrom(clazz)
+ && !clazz.equals(JEXLItemTransformerImpl.class)) {
+
+
classNames.get(IdRepoImplementationType.ITEM_TRANSFORMER).add(clazz.getName());
+ } else if (ReconFilterBuilder.class.isAssignableFrom(clazz)) {
+
classNames.get(IdMImplementationType.RECON_FILTER_BUILDER).add(bd.getBeanClassName());
+ } else if (PropagationActions.class.isAssignableFrom(clazz)) {
+
classNames.get(IdMImplementationType.PROPAGATION_ACTIONS).add(bd.getBeanClassName());
+ } else if (InboundActions.class.isAssignableFrom(clazz)) {
+
classNames.get(IdMImplementationType.INBOUND_ACTIONS).add(bd.getBeanClassName());
+ } else if (PushActions.class.isAssignableFrom(clazz)) {
+
classNames.get(IdMImplementationType.PUSH_ACTIONS).add(bd.getBeanClassName());
} else if
(InboundCorrelationRule.class.isAssignableFrom(clazz)) {
InboundCorrelationRuleConfClass annotation =
clazz.getAnnotation(
InboundCorrelationRuleConfClass.class);
@@ -181,36 +216,10 @@ public class ClassPathScanImplementationLookup implements
ImplementationLookup {
classNames.get(IdMImplementationType.PUSH_CORRELATION_RULE).add(clazz.getName());
pushCRClasses.put(annotation.value(), (Class<? extends
PushCorrelationRule>) clazz);
}
- } else if (ItemTransformer.class.isAssignableFrom(clazz)
- && !clazz.equals(JEXLItemTransformerImpl.class)) {
-
-
classNames.get(IdRepoImplementationType.ITEM_TRANSFORMER).add(clazz.getName());
- } else if (SchedTaskJobDelegate.class.isAssignableFrom(clazz)
- && !PullJobDelegate.class.isAssignableFrom(clazz)
- && !PushJobDelegate.class.isAssignableFrom(clazz)
- &&
!GroupMemberProvisionTaskJobDelegate.class.isAssignableFrom(clazz)
- && !MacroJobDelegate.class.isAssignableFrom(clazz)
- && !LiveSyncJobDelegate.class.isAssignableFrom(clazz))
{
-
-
classNames.get(IdRepoImplementationType.TASKJOB_DELEGATE).add(bd.getBeanClassName());
- } else if (ReconFilterBuilder.class.isAssignableFrom(clazz)) {
-
classNames.get(IdMImplementationType.RECON_FILTER_BUILDER).add(bd.getBeanClassName());
- } else if (LogicActions.class.isAssignableFrom(clazz)) {
-
classNames.get(IdRepoImplementationType.LOGIC_ACTIONS).add(bd.getBeanClassName());
- } else if (PropagationActions.class.isAssignableFrom(clazz)) {
-
classNames.get(IdMImplementationType.PROPAGATION_ACTIONS).add(bd.getBeanClassName());
- } else if (InboundActions.class.isAssignableFrom(clazz)) {
-
classNames.get(IdMImplementationType.INBOUND_ACTIONS).add(bd.getBeanClassName());
- } else if (PushActions.class.isAssignableFrom(clazz)) {
-
classNames.get(IdMImplementationType.PUSH_ACTIONS).add(bd.getBeanClassName());
- } else if
(PlainAttrValueValidator.class.isAssignableFrom(clazz)) {
-
classNames.get(IdRepoImplementationType.ATTR_VALUE_VALIDATOR).add(bd.getBeanClassName());
- } else if (RecipientsProvider.class.isAssignableFrom(clazz)) {
-
classNames.get(IdRepoImplementationType.RECIPIENTS_PROVIDER).add(bd.getBeanClassName());
} else if (ProvisionSorter.class.isAssignableFrom(clazz)) {
classNames.get(IdMImplementationType.PROVISION_SORTER).add(bd.getBeanClassName());
- } else if (Command.class.isAssignableFrom(clazz)) {
-
classNames.get(IdRepoImplementationType.COMMAND).add(bd.getBeanClassName());
+ } else if (LiveSyncDeltaMapper.class.isAssignableFrom(clazz)) {
+
classNames.get(IdMImplementationType.LIVE_SYNC_DELTA_MAPPER).add(bd.getBeanClassName());
} else {
extImplTypes.forEach((typeName, typeInterface) -> {
Class<?> tic =
ClassUtils.resolveClassName(typeInterface, ClassUtils.getDefaultClassLoader());
diff --git a/pom.xml b/pom.xml
index a10e45a7f1..9d25fb0488 100644
--- a/pom.xml
+++ b/pom.xml
@@ -395,7 +395,7 @@ under the License.
<project.build.outputTimestamp>2022-12-26T08:35:28Z</project.build.outputTimestamp>
<syncope.version>${project.version}</syncope.version>
- <connid.version>1.6.0.0-SNAPSHOT</connid.version>
+ <connid.version>1.6.0.0-RC2</connid.version>
<connid.soap.version>1.5.0-RC1</connid.soap.version>
<connid.rest.version>1.1.0-RC1</connid.rest.version>
<connid.db.version>2.3.0</connid.db.version>
@@ -408,7 +408,7 @@ under the License.
<connid.servicenow.version>1.0.3</connid.servicenow.version>
<connid.okta.version>3.0.5</connid.okta.version>
<connid.cmd.version>0.5</connid.cmd.version>
- <connid.kafka.version>1.0.0-SNAPSHOT</connid.kafka.version>
+ <connid.kafka.version>1.0.0</connid.kafka.version>
<cxf.version>4.1.0</cxf.version>
<bouncycastle.version>1.79</bouncycastle.version>
@@ -507,7 +507,7 @@ under the License.
<docker.mysql.version>9.0</docker.mysql.version>
<docker.mariadb.version>11</docker.mariadb.version>
<docker.oracle.version>23-slim-faststart</docker.oracle.version>
- <docker.neo4j.version>5.25.1</docker.neo4j.version>
+ <docker.neo4j.version>5.26.0</docker.neo4j.version>
<jdbc.postgresql.version>42.7.4</jdbc.postgresql.version>
<jdbc.mysql.version>9.1.0</jdbc.mysql.version>