FINERACT-1678: FineractContext had wrong dates when a cron job got triggered
This commit is contained in:
+1
-1
@@ -92,7 +92,7 @@ public class AsyncLoanCOBExecutorServiceImpl implements AsyncLoanCOBExecutorServ
|
|||||||
executingBusinessDate.format(DateTimeFormatter.ISO_DATE));
|
executingBusinessDate.format(DateTimeFormatter.ISO_DATE));
|
||||||
Set<JobParameterDTO> jobParameters = Collections.singleton(jobParameterDTO);
|
Set<JobParameterDTO> jobParameters = Collections.singleton(jobParameterDTO);
|
||||||
saveCatchUpJobParameter(scheduledJobDetail);
|
saveCatchUpJobParameter(scheduledJobDetail);
|
||||||
jobStarter.run(job, scheduledJobDetail, ThreadLocalContextUtil.getContext(), jobParameters);
|
jobStarter.run(job, scheduledJobDetail, jobParameters);
|
||||||
executingBusinessDate = executingBusinessDate.plusDays(1);
|
executingBusinessDate = executingBusinessDate.plusDays(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -338,7 +338,7 @@ public class JobRegisterServiceImpl implements JobRegisterService, ApplicationLi
|
|||||||
jobDetailFactoryBean.setGroup(scheduledJobDetail.getGroupName());
|
jobDetailFactoryBean.setGroup(scheduledJobDetail.getGroupName());
|
||||||
jobDetailFactoryBean.setConcurrent(false);
|
jobDetailFactoryBean.setConcurrent(false);
|
||||||
|
|
||||||
jobDetailFactoryBean.setArguments(job, scheduledJobDetail, ThreadLocalContextUtil.getContext(), jobParameterDTOSet);
|
jobDetailFactoryBean.setArguments(job, scheduledJobDetail, jobParameterDTOSet);
|
||||||
jobDetailFactoryBean.afterPropertiesSet();
|
jobDetailFactoryBean.afterPropertiesSet();
|
||||||
return jobDetailFactoryBean.getObject();
|
return jobDetailFactoryBean.getObject();
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-6
@@ -26,8 +26,6 @@ import java.util.Optional;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.fineract.infrastructure.core.domain.FineractContext;
|
|
||||||
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
|
|
||||||
import org.apache.fineract.infrastructure.jobs.data.JobParameterDTO;
|
import org.apache.fineract.infrastructure.jobs.data.JobParameterDTO;
|
||||||
import org.apache.fineract.infrastructure.jobs.domain.JobParameterRepository;
|
import org.apache.fineract.infrastructure.jobs.domain.JobParameterRepository;
|
||||||
import org.apache.fineract.infrastructure.jobs.domain.ScheduledJobDetail;
|
import org.apache.fineract.infrastructure.jobs.domain.ScheduledJobDetail;
|
||||||
@@ -56,10 +54,9 @@ public class JobStarter {
|
|||||||
private final List<JobParameterProvider> jobParameterProviders;
|
private final List<JobParameterProvider> jobParameterProviders;
|
||||||
private final JobNameService jobNameService;
|
private final JobNameService jobNameService;
|
||||||
|
|
||||||
public void run(Job job, ScheduledJobDetail scheduledJobDetail, FineractContext fineractContext,
|
public void run(Job job, ScheduledJobDetail scheduledJobDetail, Set<JobParameterDTO> jobParameterDTOSet)
|
||||||
Set<JobParameterDTO> jobParameterDTOSet) throws JobInstanceAlreadyCompleteException, JobExecutionAlreadyRunningException,
|
throws JobInstanceAlreadyCompleteException, JobExecutionAlreadyRunningException, JobParametersInvalidException,
|
||||||
JobParametersInvalidException, JobRestartException {
|
JobRestartException {
|
||||||
ThreadLocalContextUtil.init(fineractContext);
|
|
||||||
Map<String, JobParameter> jobParameterMap = getJobParameter(scheduledJobDetail);
|
Map<String, JobParameter> jobParameterMap = getJobParameter(scheduledJobDetail);
|
||||||
JobParameters jobParameters = new JobParametersBuilder(jobExplorer).getNextJobParameters(job)
|
JobParameters jobParameters = new JobParametersBuilder(jobExplorer).getNextJobParameters(job)
|
||||||
.addJobParameters(new JobParameters(jobParameterMap))
|
.addJobParameters(new JobParameters(jobParameterMap))
|
||||||
|
|||||||
Reference in New Issue
Block a user