Package org.springframework.batch.item.amqp

# Class AmqpItemReader<T>

java.lang.Object
org.springframework.batch.item.amqp.AmqpItemReader<T>

All Implemented Interfaces:
  `ItemReader<T>`

public class AmqpItemReader<T> extends Object implements ItemReader<T>

AMQP `ItemReader` implementation using an `AmqpTemplate` to receive and/or convert messages.

Author:
  Chris Schaefer, Mahmoud Ben Hassine

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AmqpItemReader(org.springframework.amqp.core.AmqpTemplate amqpTemplate)`
  Initialize the AmqpItemReader.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `T`
  `read()`
  Reads a piece of input data and advance to the next one.
  `void`
  `setItemType(Class<? extends T> itemType)`
  Establish the itemType for the reader.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### AmqpItemReader

    public AmqpItemReader(org.springframework.amqp.core.AmqpTemplate amqpTemplate)
    Initialize the AmqpItemReader.
    Parameters:
      `amqpTemplate` - the template to be used. Must not be null.

- ## Method Details

  - ### read

    @Nullable public T read()
    Description copied from interface: `ItemReader`
    Reads a piece of input data and advance to the next one. Implementations must return `null` 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 interface `ItemReader<T>`
    Returns:
      T the item to be processed or `null` if the data source is exhausted

  - ### setItemType

    public void setItemType(Class<? extends T> itemType)
    Establish the itemType for the reader.
    Parameters:
      `itemType` - class type that will be returned by the reader.