| Qore DataProvider Module Reference 3.2.2

Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
DataProvider::DataProviderBulkRecordIterator Class Reference

Defines the standard record iterator for bulk record iterators. More...

`#include <DataProviderBulkRecordIterator.qc.dox.h>`

Inheritance diagram for DataProvider::DataProviderBulkRecordIterator:
[legend]

## Public Member Functions
| constructor (AbstractDataProviderBulkRecordInterface bulk)
| Creates the object.
*AbstractDataProviderBulkRecordInterface | getBulkApi ()
| Returns the bulk data interface.
*hash< string, AbstractDataField > | getRecordType ()
| Returns the record description, if available.
hash< auto > | getValue ()
| Retrieves the next record if the iterator is valid.
bool | next ()
| Moves the current position to the next element; returns False if there are no more elements.
bool | supportsBulkApi ()
| Returns True as the iterator supports bulk operation.
bool | valid ()
| returns True if the iterator is currently pointing at a valid element, False if not
Public Member Functions inherited from DataProvider::AbstractDataProviderRecordIterator
| constructor (int block_size=DefaultBlockSize)
| Creates the object and optionally sets the bulk iteration block size.
*AbstractDataProviderBulkRecordInterface | getBulkApi ()
| Returns the bulk data interface if supported.
*hash< string, AbstractDataField > | getRecordType ()
| Returns the record description, if available.
abstract hash< auto > | getValue ()
| returns a single record if the iterator is valid
bool | supportsBulkApi ()
| Returns True if the iterator supports bulk operation.

## Protected Attributes
AbstractDataProviderBulkRecordInterface | bulk
| The bulk iterator object.
HashListIterator | i
| The current iterator for the current block.
bool | valid = True
| Valid flag.
Protected Attributes inherited from DataProvider::AbstractDataProviderRecordIterator
int | block_size = DefaultBlockSize
| Block size for bulk iteration.

## Additional Inherited Members
Public Attributes inherited from DataProvider::AbstractDataProviderRecordIterator
const | DefaultBlockSize = 1000
| Default block size.
Protected Member Functions inherited from DataProvider::AbstractDataProviderRecordIterator
auto | doMemberGate (string key)
| Returns the value of the given field in the current record, if the iterator is valid.
Static Protected Member Functions inherited from DataProvider::AbstractDataProviderRecordIterator
static bool | evalOperator (string field, hash< auto > cmd, hash< auto > op, hash< auto > record)
| Evaluates a generic search operator on the field value and record and returns the result.
static bool | matchGeneric (hash< auto > record, *hash< auto > where_cond)
| Checks if the current record matches the search criteria.
static bool | matchGeneric (hash< auto > record, hash< DataProviderExpression > where_cond)
| Checks if the current record matches the search criteria.
static bool | matchGenericValue (auto expects, auto val)
| Match a single value.

## Detailed Description

Defines the standard record iterator for bulk record iterators.

## Member Function Documentation

## ◆ getBulkApi()

*AbstractDataProviderBulkRecordInterface DataProvider::DataProviderBulkRecordIterator::getBulkApi | ( |  | ) |

Returns the bulk data interface.

Returns
  the bulk data interface

## ◆ getRecordType()

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

Returns the record description, if available.

Returns
  the record type of the bulk iterator

## ◆ getValue()

hash< auto > DataProvider::DataProviderBulkRecordIterator::getValue | ( |  | ) |

Retrieves the next record if the iterator is valid.

Returns
  the next record if the iterator is valid

Exceptions

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

## ◆ next()

bool DataProvider::DataProviderBulkRecordIterator::next | ( |  | ) |

Moves the current position to the next element; returns False if there are no more elements.

Once this method returns False, it will always return False, as the underlying bulk record iterator cannot be reset.

The iterator object should not be used after this method returns False

Returns
  False if there are no more elements (in which case the iterator object is invalid and should not be used); True if successful (meaning that the iterator object is valid)

Example:
  while (i.next()) {
  printf(" + %y\n", i.getValue());
  }

## ◆ supportsBulkApi()

bool DataProvider::DataProviderBulkRecordIterator::supportsBulkApi | ( |  | ) |

Returns True as the iterator supports bulk operation.

Returns
  True as the iterator supports bulk operation

## ◆ valid()

bool DataProvider::DataProviderBulkRecordIterator::valid | ( |  | ) |

returns True if the iterator is currently pointing at a valid element, False if not

Returns
  True if the iterator is currently pointing at a valid element, False if not