Class InfiniteLoopReader
- java.lang.Object
- org.springframework.batch.sample.common.InfiniteLoopReader
- All Implemented Interfaces:
ItemReader<java.lang.Object>
public class InfiniteLoopReader extends java.lang.Object implements ItemReader<java.lang.Object>
ItemReader implementation that will continually return a new object. It's generally useful for testing interruption.- Author:
- Lucas Ward
Constructor Summary
Constructors Constructor Description InfiniteLoopReader()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
read()
Reads a piece of input data and advance to the next one.
Method Detail
read
public java.lang.Object read() throws java.lang.Exception
Description copied from interface:ItemReader
Reads a piece of input data and advance to the next one. Implementations must returnnull
at the end of the input data set. In a transactional setting, caller might get the same item twice from successive calls (or otherwise), if the first call was in a transaction that rolled back.- Specified by:
read
in interfaceItemReader<java.lang.Object>
- Returns:
- T the item to be processed or
null
if the data source is exhausted - Throws:
ParseException
- if there is a problem parsing the current record (but the next one may still be valid)NonTransientResourceException
- if there is a fatal exception in the underlying resource. After throwing this exception implementations should endeavour to return null from subsequent calls to read.UnexpectedInputException
- if there is an uncategorised problem with the input data. Assume potentially transient, so subsequent calls to read might succeed.java.lang.Exception
- if an there is a non-specific error.