Example usage for org.springframework.batch.core.step.tasklet TestingChunkOrientedTasklet TestingChunkOrientedTasklet

List of usage examples for org.springframework.batch.core.step.tasklet TestingChunkOrientedTasklet TestingChunkOrientedTasklet

Introduction

In this page you can find the example usage for org.springframework.batch.core.step.tasklet TestingChunkOrientedTasklet TestingChunkOrientedTasklet.

Prototype

public TestingChunkOrientedTasklet(ItemReader<T> itemReader, ItemProcessor<T, T> itemProcessor,
        ItemWriter<T> itemWriter, RepeatOperations repeatOperations) 

Source Link

Document

Creates a PassThroughItemProcessor and uses it to create an instance of Tasklet .

Usage

From source file:org.springframework.batch.core.step.tasklet.AsyncTaskletStepTests.java

private void setUp() throws Exception {

    step = new TaskletStep("stepName");

    ResourcelessTransactionManager transactionManager = new ResourcelessTransactionManager();
    step.setTransactionManager(transactionManager);

    RepeatTemplate chunkTemplate = new RepeatTemplate();
    chunkTemplate.setCompletionPolicy(new SimpleCompletionPolicy(2));
    step.setTasklet(new TestingChunkOrientedTasklet<String>(new ListItemReader<String>(items), itemProcessor,
            itemWriter, chunkTemplate));

    jobRepository = new JobRepositorySupport();
    step.setJobRepository(jobRepository);

    TaskExecutorRepeatTemplate template = new TaskExecutorRepeatTemplate();
    template.setThrottleLimit(throttleLimit);
    SimpleAsyncTaskExecutor taskExecutor = new SimpleAsyncTaskExecutor();
    taskExecutor.setConcurrencyLimit(concurrencyLimit);
    template.setTaskExecutor(taskExecutor);
    step.setStepOperations(template);//  www.j a v  a2  s .  com

    step.registerStream(new ItemStreamSupport() {
        private int count = 0;

        @Override
        public void update(ExecutionContext executionContext) {
            super.update(executionContext);
            executionContext.putInt("counter", count++);
        }
    });

}