| Qore DataProvider Module Reference 1.2.1

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DataProvider::AbstractDataProviderBulkRecordInterface Class Referenceabstract

Defines the abstract class for data provider iterators; the destructor releases the iterator. More...

Inheritance diagram for DataProvider::AbstractDataProviderBulkRecordInterface:
[legend]

## Public Member Functions
| constructor (int block_size)
| Creates the object. More...
int | getBlockSize ()
| Returns the block size.
AbstractDataProviderRecordIterator | getRecordIterator ()
| Returns a standard record iterator for this bulk iterator. More...
*hash< string, AbstractDataField > | getRecordType ()
| Returns the record description, if available. More...
*hash< string, auto > | getValue ()
| Returns a hash of lists (or constant values) according to the block size or NOTHING if no more data is available. More...
bool | valid ()
| Returns True if there are more records to return.

## Protected Member Functions
abstract hash< string, auto > | getValueImpl ()
| Returns a hash of lists (or constant values) according to the block size or NOTHING if no more data is available. More...

## Protected Attributes
int | block_size
| The record block size.
bool | valid = True
| Valid flag.

## Detailed Description

Defines the abstract class for data provider iterators; the destructor releases the iterator.

## Member Function Documentation

## ◆ constructor()

DataProvider::AbstractDataProviderBulkRecordInterface::constructor | ( | int | block_size | ) |

Creates the object.

Parameters

  block_size | the record block size for the iterator

## ◆ getRecordIterator()

AbstractDataProviderRecordIterator DataProvider::AbstractDataProviderBulkRecordInterface::getRecordIterator | ( |  | ) |

Returns a standard record iterator for this bulk iterator.

Returns
  a standard record iterator for this bulk iterator

## ◆ getRecordType()

*hash<string, AbstractDataField> DataProvider::AbstractDataProviderBulkRecordInterface::getRecordType | ( |  | ) |

Returns the record description, if available.

This base class method returns NOTHING; reimplement in subclasses to provide a record type

## ◆ getValue()

*hash<string, auto> DataProvider::AbstractDataProviderBulkRecordInterface::getValue | ( |  | ) |

Returns a hash of lists (or constant values) according to the block size or NOTHING if no more data is available.

Returns
  a hash of lists (or constant values) according to the block size or NOTHING if no more data is available

Exceptions

  INVALID-ITERATOR | the iterator is not pointing at a valid element

Note
  - This call moves the internal record pointer forward, therefore multiple calls of this methods will return different results as long as data is available
  - A short read from getValueImpl() indicates that the final block is being delivered
  - The first hash key must be assigned to a list and cannot be assigned to a constant value

## ◆ getValueImpl()

abstract hash<string, auto> DataProvider::AbstractDataProviderBulkRecordInterface::getValueImpl | ( |  | ) |
| protected pure virtual

Returns a hash of lists (or constant values) according to the block size or NOTHING if no more data is available.

Returns
  a hash of lists (or constant values) according to the block size or NOTHING if no more data is available

Exceptions

  INVALID-ITERATOR | the iterator is not pointing at a valid element

Note
  - This call moves the internal record pointer forward, therefore multiple calls of this methods will return different results as long as data is available
  - The first hash key must be assigned to a list and cannot be assigned to a constant value

Implemented in DataProvider::DefaultBulkRecordIterface.