Author: ilgrosso Date: Wed Jun 12 14:20:13 2013 New Revision: 1492216 URL: http://svn.apache.org/r1492216 Log: [SYNCOPE-394] Ouch, missing part
Modified: syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/quartz/AbstractTransactionalTaskJob.java Modified: syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java?rev=1492216&r1=1492215&r2=1492216&view=diff ============================================================================== --- syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java (original) +++ syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java Wed Jun 12 14:20:13 2013 @@ -21,7 +21,6 @@ package org.apache.syncope.core.init; import static org.apache.syncope.core.init.JobInstanceLoader.getJobName; import static org.apache.syncope.core.init.JobInstanceLoader.getTriggerName; -import java.lang.reflect.InvocationTargetException; import java.text.ParseException; import java.util.HashSet; import java.util.Set; @@ -36,7 +35,6 @@ import org.apache.syncope.core.persisten import org.apache.syncope.core.persistence.dao.ConfDAO; import org.apache.syncope.core.persistence.dao.ReportDAO; import org.apache.syncope.core.persistence.dao.TaskDAO; -import org.apache.syncope.core.quartz.AbstractTaskJob; import org.apache.syncope.core.quartz.TaskJob; import org.apache.syncope.core.report.ReportJob; import org.apache.syncope.core.sync.DefaultSyncActions; @@ -160,27 +158,17 @@ public class JobInstanceLoader { } public void registerJob(final Task task, final String jobClassName, final String cronExpression) - throws ClassNotFoundException, SchedulerException, IllegalArgumentException, InvocationTargetException, IllegalAccessException, ParseException, NoSuchMethodException { + throws ClassNotFoundException, SchedulerException, ParseException { - Class jobClass = Class.forName(jobClassName); - TaskJob jobInstance = (TaskJob) ApplicationContextProvider.getBeanFactory(). + Class<?> jobClass = Class.forName(jobClassName); + Job jobInstance = (Job) ApplicationContextProvider.getBeanFactory(). createBean(jobClass, AbstractBeanDefinition.AUTOWIRE_BY_TYPE, false); - - LOG.info("XXXXXXXXXXXXXXXXx {} {} {}", jobClassName, jobInstance.getClass().getName(), task.getId()); - -// if (AbstractTaskJob.class.isAssignableFrom(jobClass)) { - LOG.info("QQQQQQQQ DENTRO"); -// MethodInvoker invoker = new MethodInvoker(); -//invoker.setTargetMethod("setTaskId"); -//invoker.setTargetObject(jobInstance); -//invoker.setArguments(new Object[]{task.getId()}); -//invoker.prepare(); -//invoker.invoke(); - jobInstance.setTaskId(task.getId()); -// } + if (jobInstance instanceof TaskJob) { + ((TaskJob) jobInstance).setTaskId(task.getId()); + } if (jobInstance instanceof SyncJob && task instanceof SyncTask) { String jobActionsClassName = ((SyncTask) task).getActionsClassName(); - Class syncActionsClass = DefaultSyncActions.class; + Class<?> syncActionsClass = DefaultSyncActions.class; if (StringUtils.isNotBlank(jobActionsClassName)) { try { syncActionsClass = Class.forName(jobActionsClassName); Modified: syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/quartz/AbstractTransactionalTaskJob.java URL: http://svn.apache.org/viewvc/syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/quartz/AbstractTransactionalTaskJob.java?rev=1492216&r1=1492215&r2=1492216&view=diff ============================================================================== --- syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/quartz/AbstractTransactionalTaskJob.java (original) +++ syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/quartz/AbstractTransactionalTaskJob.java Wed Jun 12 14:20:13 2013 @@ -22,6 +22,9 @@ import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import org.springframework.transaction.annotation.Transactional; +/** + * Abstract job implementation for transactional execution. + */ public abstract class AbstractTransactionalTaskJob extends AbstractTaskJob { @Transactional