use of org.springframework.batch.core.step.tasklet.TaskletStep in project head by mifos.
the class MifosScheduler method schedule.
@Deprecated
public void schedule(final String jobName, Date initialTime, long delay, JobRegistry jobRegistry, final JobRepository jobRepository, Map<String, Object> jobData, ResourcelessTransactionManager transactionManager) throws TaskSystemException {
try {
final TaskletStep step = new TaskletStep();
step.setName(jobName);
Tasklet tasklet = (Tasklet) Class.forName(BATCH_JOB_CLASS_PATH_PREFIX + getHelperName(jobName)).newInstance();
step.setTasklet(tasklet);
step.setJobRepository(jobRepository);
step.setTransactionManager(transactionManager);
step.afterPropertiesSet();
jobRegistry.register(new JobFactory() {
@Override
public Job createJob() {
SimpleJob job = new SimpleJob(jobName + "Job");
job.setJobRepository(jobRepository);
job.setRestartable(true);
job.registerJobExecutionListener(new BatchJobListener());
job.addStep(step);
return job;
}
@Override
public String getJobName() {
return jobName + "Job";
}
});
} catch (Exception e) {
throw new TaskSystemException(e);
}
JobDetailBean jobDetailBean = new JobDetailBean();
jobDetailBean.setJobDataAsMap(jobData);
try {
jobDetailBean.setJobClass(Class.forName(BATCH_JOB_CLASS_PATH_PREFIX + jobName));
} catch (ClassNotFoundException cnfe) {
throw new TaskSystemException(cnfe);
}
jobDetailBean.setName(jobName + "Job");
jobDetailBean.setGroup(Scheduler.DEFAULT_GROUP);
jobDetailBean.afterPropertiesSet();
SimpleTrigger trigger = new SimpleTrigger();
trigger.setName(jobName + "Job");
trigger.setGroup(Scheduler.DEFAULT_GROUP);
trigger.setStartTime(initialTime);
trigger.setRepeatInterval(delay);
trigger.setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);
try {
scheduler.scheduleJob(jobDetailBean, trigger);
} catch (SchedulerException se) {
throw new TaskSystemException(se);
}
}
use of org.springframework.batch.core.step.tasklet.TaskletStep in project head by mifos.
the class MifosScheduler method scheduleLoanArrearsAndPortfolioAtRisk.
@Deprecated
public void scheduleLoanArrearsAndPortfolioAtRisk(Date initialTime, long delay, JobRegistry jobRegistry, final JobRepository jobRepository, Map<String, Object> jobData, ResourcelessTransactionManager transactionManager) throws TaskSystemException {
final String jobName = "LoanArrearsAndPortfolioAtRiskTask";
try {
final TaskletStep step1 = new TaskletStep();
step1.setName("LoanArrearsAndPortfolioAtRiskTask-step-1");
step1.setTasklet((Tasklet) Class.forName(BATCH_JOB_CLASS_PATH_PREFIX + getHelperName("LoanArrearsTask")).newInstance());
step1.setJobRepository(jobRepository);
step1.setTransactionManager(transactionManager);
step1.afterPropertiesSet();
final TaskletStep step2 = new TaskletStep();
step2.setName("LoanArrearsAndPortfolioAtRiskTask-step-2");
step2.setTasklet((Tasklet) Class.forName(BATCH_JOB_CLASS_PATH_PREFIX + getHelperName("PortfolioAtRiskTask")).newInstance());
step2.setJobRepository(jobRepository);
step2.setTransactionManager(transactionManager);
step2.afterPropertiesSet();
jobRegistry.register(new JobFactory() {
@Override
public Job createJob() {
SimpleJob job = new SimpleJob(jobName + "Job");
job.setJobRepository(jobRepository);
job.setRestartable(true);
job.registerJobExecutionListener(new BatchJobListener());
job.addStep(step1);
job.addStep(step2);
return job;
}
@Override
public String getJobName() {
return jobName + "Job";
}
});
} catch (Exception e) {
throw new TaskSystemException(e);
}
JobDetailBean jobDetailBean = new JobDetailBean();
jobDetailBean.setJobDataAsMap(jobData);
try {
jobDetailBean.setJobClass(Class.forName(BATCH_JOB_CLASS_PATH_PREFIX + "PortfolioAtRiskTask"));
} catch (ClassNotFoundException cnfe) {
throw new TaskSystemException(cnfe);
}
jobDetailBean.setName(jobName + "Job");
jobDetailBean.setGroup(Scheduler.DEFAULT_GROUP);
jobDetailBean.afterPropertiesSet();
SimpleTrigger trigger = new SimpleTrigger();
trigger.setName(jobName + "Job");
trigger.setGroup(Scheduler.DEFAULT_GROUP);
trigger.setStartTime(initialTime);
trigger.setRepeatInterval(delay);
trigger.setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);
try {
scheduler.scheduleJob(jobDetailBean, trigger);
} catch (SchedulerException se) {
throw new TaskSystemException(se);
}
}
use of org.springframework.batch.core.step.tasklet.TaskletStep in project hub-alert by blackducksoftware.
the class CommonConfigTest method testCreateStep.
@SuppressWarnings({ "rawtypes", "unchecked" })
@Test
public void testCreateStep() {
final StepBuilderFactory stepBuilderFactory = Mockito.mock(StepBuilderFactory.class);
final TaskExecutor taskExecutor = Mockito.mock(TaskExecutor.class);
final PlatformTransactionManager transactionManager = Mockito.mock(PlatformTransactionManager.class);
final C config = getConfigWithParams(stepBuilderFactory, taskExecutor, transactionManager);
final R reader = getMockReader();
final P processor = getMockProcessor();
final W writer = getMockWriter();
final StepBuilder stepBuilder = Mockito.mock(StepBuilder.class);
final SimpleStepBuilder simpleStepBuilder = Mockito.mock(SimpleStepBuilder.class);
final AbstractTaskletStepBuilder abstractTaskletStepBuilder = Mockito.mock(AbstractTaskletStepBuilder.class);
Mockito.when(stepBuilderFactory.get(Mockito.anyString())).thenReturn(stepBuilder);
Mockito.when(stepBuilder.chunk(Mockito.anyInt())).thenReturn(simpleStepBuilder);
Mockito.when(simpleStepBuilder.reader(reader)).thenReturn(simpleStepBuilder);
Mockito.when(simpleStepBuilder.processor(processor)).thenReturn(simpleStepBuilder);
Mockito.when(simpleStepBuilder.writer(writer)).thenReturn(simpleStepBuilder);
Mockito.when(simpleStepBuilder.taskExecutor(taskExecutor)).thenReturn(abstractTaskletStepBuilder);
Mockito.when(abstractTaskletStepBuilder.transactionManager(transactionManager)).thenReturn(abstractTaskletStepBuilder);
Mockito.when(abstractTaskletStepBuilder.build()).thenReturn(new TaskletStep());
final Step step = config.createStep(reader, processor, writer);
assertNotNull(step);
}
Aggregations