Example usage for org.springframework.batch.core.step.tasklet TaskletStep setStepExecutionListeners

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

Introduction

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

Prototype

public void setStepExecutionListeners(StepExecutionListener[] listeners) 

Source Link

Document

Register each of the objects as listeners.

Usage

From source file:org.springframework.batch.core.step.item.SimpleStepFactoryBean.java

/**
 * Register listeners with step and chunk.
 *//*from  ww  w  .  j a  v a2s  .co m*/
private void registerStepListeners(TaskletStep step, RepeatOperations chunkOperations) {

    for (Object itemHandler : new Object[] { getItemReader(), itemWriter, itemProcessor }) {
        if (StepListenerFactoryBean.isListener(itemHandler)) {
            StepListener listener = StepListenerFactoryBean.getListener(itemHandler);
            if (listener instanceof StepExecutionListener) {
                step.registerStepExecutionListener((StepExecutionListener) listener);
            }
            if (listener instanceof ChunkListener) {
                registerChunkListeners(step, listener);
            }
        }
    }

    step.setStepExecutionListeners(BatchListenerFactoryHelper
            .getListeners(listeners, StepExecutionListener.class).toArray(new StepExecutionListener[] {}));

    List<ChunkListener> chunkListeners = BatchListenerFactoryHelper.getListeners(listeners,
            ChunkListener.class);
    for (ChunkListener chunkListener : chunkListeners) {
        registerChunkListeners(step, chunkListener);
    }
}