DataProvider::AbstractDataProcessor Class Referenceabstract

Defines an abstract class for accepting data and outputting optionally transformed or filtered data. More...

## Public Member Functions

AbstractDataProviderType | getExpectedType ()
| Returns the expected type of data to be submitted, if available. More...
AbstractDataProviderType | getReturnType ()
| Returns the type of data that will be returned, if available. More...
auto | submit (auto _data)
| Submits the data for processing. More...
bool | supportsBulkApi ()
| Returns True if the data processor supports bulk operation. More...

## Protected Member Functions

*AbstractDataProviderType | getExpectedTypeImpl ()
| Returns the expected type of data to be submitted, if available. More...
*AbstractDataProviderType | getReturnTypeImpl ()
| Returns the type of data that will be returned, if available. More...
abstract auto | submitImpl (auto _data)
| Submits the data for processing. More...
abstract bool | supportsBulkApiImpl ()
| Returns True if the data processor supports bulk operation. More...

## Detailed Description

Defines an abstract class for accepting data and outputting optionally transformed or filtered data.

## Member Function Documentation

## getExpectedType()

AbstractDataProviderType DataProvider::AbstractDataProcessor::getExpectedType | ( |  | ) |

Returns the expected type of data to be submitted, if available.

Returns
  the expected type of data to be submitted, if available

Note
  Calls getExpectedTypeImpl() to provide the return value

## getExpectedTypeImpl()

*AbstractDataProviderType DataProvider::AbstractDataProcessor::getExpectedTypeImpl | ( |  | ) |

protected

Returns the expected type of data to be submitted, if available.

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

## getReturnType()

AbstractDataProviderType DataProvider::AbstractDataProcessor::getReturnType | ( |  | ) |

Returns the type of data that will be returned, if available.

Returns
  the type of data that will be returned, if available

Note
  Calls getReturnTypeImpl() to provide the return value

## getReturnTypeImpl()

*AbstractDataProviderType DataProvider::AbstractDataProcessor::getReturnTypeImpl | ( |  | ) |

protected

Returns the type of data that will be returned, if available.

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

## submit()

auto DataProvider::AbstractDataProcessor::submit | ( | auto | _data | ) |

Submits the data for processing.

Parameters

  _data | the data to process

Exceptions

  DPE-SKIP-DATA | throw this exception to tell the DataProviderPipeline skip processing the data for the rest of the queue

Note
  - Calls submitImpl() on the data to do the actual processing
  - Accept and return type information is not enforced in this method; it must be enforced in submitImpl()

## submitImpl()

abstract auto DataProvider::AbstractDataProcessor::submitImpl | ( | auto | _data | ) |

protected pure virtual

Submits the data for processing.

Parameters

  _data | the data to process

Exceptions

  DPE-SKIP-DATA | throw this exception to tell the DataProviderPipeline to skip processing the data for the rest of the queue

## supportsBulkApi()

bool DataProvider::AbstractDataProcessor::supportsBulkApi | ( |  | ) |

Returns True if the data processor supports bulk operation.

Returns
  True if the data processor supports bulk operation

Note
  Calls supportsBulkApiImpl() to return the answer

## supportsBulkApiImpl()

abstract bool DataProvider::AbstractDataProcessor::supportsBulkApiImpl | ( |  | ) |

protected pure virtual

Returns True if the data processor supports bulk operation.

Returns
  True if the data processor supports bulk operation