Example usage for org.springframework.batch.item.file MultiResourceItemReader getCurrentResource

List of usage examples for org.springframework.batch.item.file MultiResourceItemReader getCurrentResource

Introduction

In this page you can find the example usage for org.springframework.batch.item.file MultiResourceItemReader getCurrentResource.

Prototype

@Nullable
public Resource getCurrentResource() 

Source Link

Document

Getter for the current resource.

Usage

From source file:de.langmi.spring.batch.examples.playground.file.getcurrentresource.GetCurrentResourceChunkListener.java

@Override
public void beforeChunk(ChunkContext cc) {
    if (proxy instanceof Advised) {
        try {/*  w  ww  .  j  a v a2s  .  c  o  m*/
            Advised advised = (Advised) proxy;
            Object obj = advised.getTargetSource().getTarget();
            MultiResourceItemReader mrirTarget = (MultiResourceItemReader) obj;
            if (mrirTarget != null && mrirTarget.getCurrentResource() != null
                    && !fileNames.contains(mrirTarget.getCurrentResource().getFilename())) {
                String fileName = mrirTarget.getCurrentResource().getFilename();
                fileNames.add(fileName);
                String index = String.valueOf(fileNames.indexOf(fileName));
                stepExecution.getExecutionContext().put("current.resource" + index, fileName);
            }
        } catch (Exception ex) {
            throw new RuntimeException(ex);
        }
    }
}