javax.batch.api.chunk

## Interface ItemReader

All Known Implementing Classes:
  AbstractItemReader

    public interface ItemReader

ItemReader defines the batch artifact that reads items for chunk processing.

### Method Summary

Methods
`Serializable` `checkpointInfo()` The checkpointInfo method returns the current checkpoint data for this reader.
`void` `close()` The close method marks the end of use of the ItemReader.
`void` `open(Serializable checkpoint)` The open method prepares the reader to read items.
`Object` `readItem()` The readItem method returns the next item for chunk processing.

### Method Detail

#### open

    void open(Serializable checkpoint)
              throws Exception

The open method prepares the reader to read items. The input parameter represents the last checkpoint for this reader in a given job instance. The checkpoint data is defined by this reader and is provided by the checkpointInfo method. The checkpoint data provides the reader whatever information it needs to resume reading items upon restart. A checkpoint value of null is passed upon initial start.

Parameters:
  `checkpoint` - specifies the last checkpoint
Throws:
  `Exception` - is thrown for any errors.

#### close

    void close()
               throws Exception

The close method marks the end of use of the ItemReader. The reader is free to do any cleanup necessary.

Throws:
  `Exception` - is thrown for any errors.

#### readItem

    Object readItem()
                    throws Exception

The readItem method returns the next item for chunk processing. It returns null to indicate no more items, which also means the current chunk will be committed and the step will end.

Returns:
  next item or null
Throws:
  `Exception` - is thrown for any errors.

#### checkpointInfo

    Serializable checkpointInfo()
                                throws Exception

The checkpointInfo method returns the current checkpoint data for this reader. It is called before a chunk checkpoint is committed.

Returns:
  checkpoint data
Throws:
  `Exception` - is thrown for any errors.

© Copyright IBM Corp. 2014
Licensed under the Apache License, Version 2.0