Loading...
Searching...
No Matches
DbDataProvider::DbDataProvider Class Reference

The database data provider class, provides tables as children. More...

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

Inherits AbstractDataProvider.

## Public Member Functions

| beginTransaction ()
| Begins a transaction in the datasource. More...
| commit ()
| Commits any transaction in progress in the datasource. More...
| constructor (*hash< auto > options)
| Creates the object from constructor options.
| constructor (AbstractDatabase db)
| creates the object
| constructor (AbstractDatasource ds, *hash< auto > opts)
| creates the object
private AbstractDataProvider | createChildProviderImpl (string name, hash< string, AbstractDataField > fields, *hash< auto > child_create_options)
| Creates a new child data provider and returns it after adding as a child. More...
*list< hash< DataProviderSummaryInfo > > | getChildProviderSummaryInfo ()
| Return data provider summary info.
*string | getDesc ()
| Returns the data provider description.
string | getName ()
| Returns the data provider name.
hash< auto > | makeTableDesc (string name, hash< string, AbstractDataField > fields, *hash< auto > opts)
| Returns a table description hash from a field description. More...
| rollback ()
| Rolls back any transaction in progress in the datasource. More...
private AbstractDataProviderBulkRecordInterface | searchRecordsBulkImpl (int block_size=1000, *hash< auto > where_cond, *hash< auto > search_options)
| Returns an iterator for zero or more records matching the search options. More...

## Static Public Member Functions

static hash< GenericColumnInfo > | getColumnDesc (AbstractDatabase db, AbstractDataField field, *hash< auto > opts)
| Returns a column description hash for a field.
static AbstractDatasource | getDatasource (AbstractDatasource ds)
| Returns the given AbstractDatasource object.
static AbstractDatasource | getDatasource (string ds_string)
| Returns an AbstractDatasource object from the given string.
static *hash< string, AbstractDataField > | getRecordTypeFromDescribeHash (hash< auto > describe_hash)
| Returns the record type description from a describe hash. More...
static AbstractTable | getTable (AbstractDatasource ds, string table_string)
| Returns an AbstractTable object from the given datasource and table arguments.
static AbstractTable | getTable (string ds_string, string table_string)
| Returns an AbstractTable object from the given datasource and table strings.
static | setDatasourceLookup (code datasource_lookup)
| Sets the datasource lookup.
static | setTableLookup (code table_lookup)
| Sets the table lookup.

## Public Attributes

const | ChildCreateOptions
| Child provider creation options.
const | ConstructorOptions
| Constructor options.
const | ProviderInfo
| Provider info.
const | SearchOptions
| Search options.

## Protected Member Functions

| deleteChildProviderImpl (string name, *hash< auto > child_delete_options)
| Deletes a child data provider. More...
*AbstractDataProvider | getChildProviderImpl (string name)
| Returns the given child provider or NOTHING if the given child is unknown. More...
*list< string > | getChildProviderNamesImpl ()
| Returns a list of child data provider names, if any. More...
*hash< string, AbstractDataField > | getRecordTypeImpl (*hash< auto > search_options)
| Returns the description of the record type, if any. More...
hash< DataProviderInfo > | getStaticInfoImpl ()
| Returns data provider static info.
AbstractDataProviderRecordIterator | searchRecordsImpl (*hash< auto > where_cond, *hash< auto > search_options)
| Returns an iterator for zero or more records matching the search options. More...

## Protected Attributes

AbstractDatabase | db
| The database object.

## Static Protected Attributes

static *code | datasource_lookup
| Lookup to get an abstract datasource from a name.
static *code | table_lookup
| Lookup to get an abstract table from a datasource and a name.

## Detailed Description

The database data provider class, provides tables as children.

## Member Function Documentation

## beginTransaction()

DbDataProvider::DbDataProvider::beginTransaction | ( |  | ) |

Begins a transaction in the datasource.

See also
  :
  - commit()
  - rollback()

Since
  DbDataProvider 1.0.1

## commit()

DbDataProvider::DbDataProvider::commit | ( |  | ) |

Commits any transaction in progress in the datasource.

See also
  :
  - beginTransaction()
  - rollback()

## createChildProviderImpl()

private AbstractDataProvider DbDataProvider::DbDataProvider::createChildProviderImpl | ( | string | name,
|  | hash< string, AbstractDataField > | fields,
|  | *hash< auto > | child_create_options
| ) |  |

inline

Creates a new child data provider and returns it after adding as a child.

Parameters

  name | the name of the new child data provider
  fields | the fields for the new child data provider
  child_create_options | the options for creating the new child data provider

Returns
  the new child data provider

Since
  DataProvider 2.0

## deleteChildProviderImpl()

DbDataProvider::DbDataProvider::deleteChildProviderImpl | ( | string | name,
|  | *hash< auto > | child_delete_options
| ) |  |

protected

Deletes a child data provider.

Parameters

  name | the name of the new child data provider
  child_delete_options | the options for deleting a child data provider

Exceptions

  DELETE-CHILD-PROVIDER-ERROR | error dropping the child data provider

Since
  DataProvider 2.0

## getChildProviderImpl()

*AbstractDataProvider DbDataProvider::DbDataProvider::getChildProviderImpl | ( | string | name | ) |

protected

Returns the given child provider or NOTHING if the given child is unknown.

Returns
  the given child provider or NOTHING if the given child is unknown

Exceptions

  CHILD-PROVIDER-ERROR | error acquiring child provider

See also
  getChildProviderEx()

## getChildProviderNamesImpl()

*list< string > DbDataProvider::DbDataProvider::getChildProviderNamesImpl | ( |  | ) |

protected

Returns a list of child data provider names, if any.

Returns
  a list of child data provider names, if any

## getRecordTypeFromDescribeHash()

static *hash< string, AbstractDataField > DbDataProvider::DbDataProvider::getRecordTypeFromDescribeHash | ( | hash< auto > | describe_hash | ) |

static

Returns the record type description from a describe hash.

Parameters

  describe_hash | a hash as returned by AbstractSQLStatement::describe()

Returns
  the record type of the query results

## getRecordTypeImpl()

*hash< string, AbstractDataField > DbDataProvider::DbDataProvider::getRecordTypeImpl | ( | *hash< auto > | search_options | ) |

protected

Returns the description of the record type, if any.

Parameters

  search_options | to be included and processed by validateSearchOptions() if recordRequiresSearchOptions() is True for this provider, otherwise any value provided in this argument is ignored

## makeTableDesc()

hash< auto > DbDataProvider::DbDataProvider::makeTableDesc | ( | string | name,
|  | hash< string, AbstractDataField > | fields,
|  | *hash< auto > | opts
| ) |  |

Returns a table description hash from a field description.

Exceptions

  TABLE-DESC-ERROR | error in table description

## rollback()

DbDataProvider::DbDataProvider::rollback | ( |  | ) |

Rolls back any transaction in progress in the datasource.

See also
  :
  - beginTransaction()
  - commit()

## searchRecordsBulkImpl()

private AbstractDataProviderBulkRecordInterface DbDataProvider::DbDataProvider::searchRecordsBulkImpl | ( | int | block_size = `1000`,
|  | *hash< auto > | where_cond,
|  | *hash< auto > | search_options
| ) |  |

inline

Returns an iterator for zero or more records matching the search options.

Parameters

  block_size | the number of records in a read block; must be a positive number
  where_cond | the search criteria after processing by processFieldValues()
  search_options | the search options after processing by validateSearchOptions()

Exceptions

  INVALID-BLOCK-SIZE | the block size must be a positive number
  INVALID-OPERATION | the data provider does not support reading

## searchRecordsImpl()

AbstractDataProviderRecordIterator DbDataProvider::DbDataProvider::searchRecordsImpl | ( | *hash< auto > | where_cond,
|  | *hash< auto > | search_options
| ) |  |

protected

Returns an iterator for zero or more records matching the search options.

Parameters

  where_cond | the search criteria
  search_options | the search options after processing by validateSearchOptions()

See also
  requestSearchRecordsImpl()