51#ifndef DOXYGEN_SHOULD_SKIP_THIS
58 template <
class DATABASE >
60 switch (_input_type_) {
61 case InputType::STRING : _fillDatabaseFromStrings_(database, retry_insertion);
return;
63 case InputType::DBCELL : _fillDatabaseFromDBCells_(database, retry_insertion);
return;
67 "fillDatabase has not been implemented yet for this "
68 "type of IDBInitializerInputType");
72 template <
class DATABASE >
73 void IDBInitializer::_fillDatabaseFromStrings_(DATABASE& database,
const bool retry_insertion) {
75 if (retry_insertion && _last_insertion_failed_) {
77 _last_insertion_failed_ =
false;
86 _last_insertion_failed_ =
true;
93 template <
class DATABASE >
94 void IDBInitializer::_fillDatabaseFromDBCells_(DATABASE& database,
const bool retry_insertion) {
96 if (retry_insertion && _last_insertion_failed_) {
98 _last_insertion_failed_ =
false;
107 _last_insertion_failed_ =
true;
The base class for initializing DatabaseTable and RawDatabaseTable instances from CSV files or SQL da...
virtual const DBRow< DBCell > & currentDBCellRow_()
asks the child class for the content of the current row using dbcells
void fillDatabase(DATABASE &database, const bool retry_insertion=false)
fills the rows of the database table
virtual bool nextRow_()=0
indicates whether there is a next row to read (and point on it)
virtual const std::vector< std::string > & currentStringRow_()
asks the child class for the content of the current row using strings
#define GUM_ERROR(type, msg)
include the inlined functions if necessary
gum is the global namespace for all aGrUM entities