Package org.apache.calcite.avatica.util

## Class RecordIteratorCursor<E>

- java.lang.Object
- - org.apache.calcite.avatica.util.AbstractCursor
  - - org.apache.calcite.avatica.util.PositionedCursor<E>
    - - org.apache.calcite.avatica.util.IteratorCursor<E>
      - - org.apache.calcite.avatica.util.RecordIteratorCursor<E>

Type Parameters:
  `E` - Element type

All Implemented Interfaces:
  `java.lang.AutoCloseable`, `Cursor`

    public class RecordIteratorCursor<E>
    extends IteratorCursor<E>

Implementation of `Cursor` on top of an `Iterator` that returns a record for each row. The record is a synthetic class whose fields are all public.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.calcite.avatica.util.PositionedCursor

`PositionedCursor.ArrayGetter, PositionedCursor.FieldGetter, PositionedCursor.ListGetter, PositionedCursor.MapGetter<K>, PositionedCursor.ObjectGetter`

### Nested classes/interfaces inherited from class org.apache.calcite.avatica.util.AbstractCursor

`AbstractCursor.AbstractGetter, AbstractCursor.AccessorImpl, AbstractCursor.ArrayAccessor, AbstractCursor.Getter, AbstractCursor.NumberAccessor, AbstractCursor.SlotGetter, AbstractCursor.StructGetter`

### Nested classes/interfaces inherited from interface org.apache.calcite.avatica.util.Cursor

`Cursor.Accessor`

### Field Summary

Fields
`private java.util.List<java.lang.reflect.Field>` `fields`

### Fields inherited from class org.apache.calcite.avatica.util.AbstractCursor

`wasNull`

### Constructor Summary

Constructors
`RecordIteratorCursor​(java.util.Iterator<E> iterator, java.lang.Class<E> clazz)` Creates a RecordIteratorCursor.
`RecordIteratorCursor​(java.util.Iterator<E> iterator, java.lang.Class<E> clazz, java.util.List<java.lang.reflect.Field> fields)` Creates a RecordIteratorCursor that projects particular fields.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected AbstractCursor.Getter` `createGetter​(int ordinal)`

### Methods inherited from class org.apache.calcite.avatica.util.IteratorCursor

`close, current, next`

### Methods inherited from class org.apache.calcite.avatica.util.AbstractCursor

`createAccessor, createAccessor, createAccessors, intToTime, longToTimestamp, wasNull`

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

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

### Field Detail

#### fields

    private final java.util.List<java.lang.reflect.Field> fields

### Constructor Detail

#### RecordIteratorCursor

    public RecordIteratorCursor​(java.util.Iterator<E> iterator,
                                java.lang.Class<E> clazz)

Creates a RecordIteratorCursor.

Parameters:
  `iterator` - Iterator
  `clazz` - Element type

#### RecordIteratorCursor

    public RecordIteratorCursor​(java.util.Iterator<E> iterator,
                                java.lang.Class<E> clazz,
                                java.util.List<java.lang.reflect.Field> fields)

Creates a RecordIteratorCursor that projects particular fields.

Parameters:
  `iterator` - Iterator
  `clazz` - Element type
  `fields` - Fields to project

### Method Detail

#### createGetter

    protected AbstractCursor.Getter createGetter​(int ordinal)

Specified by:
  `createGetter` in class `AbstractCursor`