# ResultMapper.hpp

This File On Github
Ask A Question

API: latest
module: oatpp-sqlite
#include "oatpp-sqlite/mapping/ResultMapper.hpp"

# ResultMapper

Mapper from SQLite result to oatpp objects.

namespace oatpp { namespace sqlite { namespace mapping { 
  class ResultMapper {}
}}}

# Methods

Return Type Name Summary
[none] ResultMapper Default constructor.
void setReadOneRowMethod Set "read one row" method for class id.
void setReadRowsMethod Set "read rows" method for class id.
oatpp::Void readOneRow Read one row to oatpp object or collection.
oatpp::Void readRows Read count of rows to oatpp collection.

# ResultMapper::ResultMapper

Default constructor.

ResultMapper()

# ResultMapper::setReadOneRowMethod

Set "read one row" method for class id.

  • @param classId
  • @param method

void setReadOneRowMethod(const data::mapping::type::ClassId& classId, ReadOneRowMethod method)

# ResultMapper::setReadRowsMethod

Set "read rows" method for class id.

  • @param classId
  • @param method

void setReadRowsMethod(const data::mapping::type::ClassId& classId, ReadRowsMethod method)

# ResultMapper::readOneRow

Read one row to oatpp object or collection.
Allowed output type classes are: - oatpp::Vector - oatpp::List - oatpp::UnorderedSet - oatpp::Fields - oatpp::UnorderedFields - oatpp::Object

  • @param dbData
  • @param type
  • @return

oatpp::Void readOneRow(ResultData* dbData, const Type* type)

# ResultMapper::readRows

Read count of rows to oatpp collection.
Allowed collections to store rows are: - oatpp::Vector - oatpp::List - oatpp::UnorderedSet.

  • @param dbData
  • @param type
  • @param count
  • @return

oatpp::Void readRows(ResultData* dbData, const Type* type, v_int64 count)

# ResultMapper::ResultData

Result data

namespace oatpp { namespace sqlite { namespace mapping { 
  class ResultMapper {
    struct ResultData {}
  };
}}}

# Fields

Type Name Summary
sqlite3_stmt* stmt SQLite statement.
std::shared_ptr<const data::mapping::TypeResolver> typeResolver oatpp::data::mapping::TypeResolver.
std::vector<oatpp::String> colNames Names of columns.
std::unordered_map<data::share::StringKeyLabel, v_int32> colIndices Column indices.
v_int64 colCount Column count.
v_int64 rowIndex Current row index.
bool hasMore Has more to read.
bool isSuccess Is success.

# Methods

Return Type Name Summary
[none] ResultData Constructor.
void next Move to next row.

# ResultMapper::ResultData::stmt

SQLite statement.

sqlite3_stmt* stmt

# ResultMapper::ResultData::typeResolver

oatpp::data::mapping::TypeResolver.

std::shared_ptr<const data::mapping::TypeResolver> typeResolver

# ResultMapper::ResultData::colNames

Names of columns.

std::vector<oatpp::String> colNames

# ResultMapper::ResultData::colIndices

Column indices.

std::unordered_map<data::share::StringKeyLabel, v_int32> colIndices

# ResultMapper::ResultData::colCount

Column count.

v_int64 colCount

# ResultMapper::ResultData::rowIndex

Current row index.

v_int64 rowIndex

# ResultMapper::ResultData::hasMore

Has more to read.

bool hasMore

# ResultMapper::ResultData::isSuccess

Is success.

bool isSuccess

# ResultMapper::ResultData::ResultData

Constructor.

  • @param pStmt
  • @param pTypeResolver

ResultData(sqlite3_stmt* pStmt, const std::shared_ptr<const data::mapping::TypeResolver>& pTypeResolver)

# ResultMapper::ResultData::next

Move to next row.

void next()