![]() |
QxOrm
1.4.4
C++ Object Relational Mapping library
|
qx::QxSqlRelationLinked : hierarchy of relationships to build SQL query More...
#include <QxSqlRelationLinked.h>
Public Member Functions | |
QxSqlRelationLinked () | |
QxSqlRelationLinked (bool bRoot) | |
virtual | ~QxSqlRelationLinked () |
qx_bool | buildHierarchy (IxSqlRelationX *pRelationX, const QStringList &sRelationX) |
void | hierarchySelect (QxSqlRelationParams ¶ms) |
void | hierarchyFrom (QxSqlRelationParams ¶ms) |
void | hierarchyJoin (QxSqlRelationParams ¶ms) |
void | hierarchyWhereSoftDelete (QxSqlRelationParams ¶ms) |
void | hierarchyResolveOutput (QxSqlRelationParams ¶ms) |
QSqlError | hierarchyOnBeforeSave (QxSqlRelationParams ¶ms) |
QSqlError | hierarchyOnAfterSave (QxSqlRelationParams ¶ms) |
void | updateOffset (QxSqlRelationParams ¶ms) |
bool | getCartesianProduct () const |
long | getAllRelationCount () const |
long | getRelationCount () const |
bool | existRelation (const QString &sKey) const |
bool | checkRootColumns (const QString &s) const |
long | getRootColumnsCount () const |
long | getRootColumnsOffset () const |
void | setRootColumnsOffset (long l) |
Protected Member Functions | |
QStringList | removeColumns (const QStringList &columnsToRemove, IxSqlRelation *pRelation) const |
qx_bool | insertRelationToHierarchy (const QStringList &sRelationX, const QString &sKey, qx::dao::sql_join::join_type eJoinType) |
bool | isValidDaoHelper (QxSqlRelationParams ¶ms) const |
Private Attributes | |
std::unique_ptr < QxSqlRelationLinkedImpl > | m_pImpl |
Private implementation idiom. |
qx::QxSqlRelationLinked : hierarchy of relationships to build SQL query
Here is the structure, each real relation has a relation linked associated to build the hierarchy, like this :
(<root>, <relation_linked>) ("blog", blog_relation) ("blog", <relation_linked>) ("author", author_relation) ("author", <relation_linked>) ("list_blog", list_blog_relation) ("list_blog", <relation_linked>) (etc...) ("comment", comment_relation) ("comment", <relation_linked>) ("blog_id", blog_id_relation) ("blog_id", <relation_linked>) (etc...) ("category", category_relation) ("category", <relation_linked>) ("list_blog", list_blog_relation) ("list_blog", <relation_linked>) (etc...)
Definition at line 82 of file QxSqlRelationLinked.h.
qx::QxSqlRelationLinked::QxSqlRelationLinked | ( | ) |
qx::QxSqlRelationLinked::QxSqlRelationLinked | ( | bool | bRoot | ) |
virtual qx::QxSqlRelationLinked::~QxSqlRelationLinked | ( | ) | [virtual] |
qx_bool qx::QxSqlRelationLinked::buildHierarchy | ( | IxSqlRelationX * | pRelationX, |
const QStringList & | sRelationX | ||
) |
bool qx::QxSqlRelationLinked::checkRootColumns | ( | const QString & | s | ) | const |
bool qx::QxSqlRelationLinked::existRelation | ( | const QString & | sKey | ) | const |
long qx::QxSqlRelationLinked::getAllRelationCount | ( | ) | const |
bool qx::QxSqlRelationLinked::getCartesianProduct | ( | ) | const |
long qx::QxSqlRelationLinked::getRelationCount | ( | ) | const |
long qx::QxSqlRelationLinked::getRootColumnsCount | ( | ) | const |
long qx::QxSqlRelationLinked::getRootColumnsOffset | ( | ) | const |
void qx::QxSqlRelationLinked::hierarchyFrom | ( | QxSqlRelationParams & | params | ) |
void qx::QxSqlRelationLinked::hierarchyJoin | ( | QxSqlRelationParams & | params | ) |
QSqlError qx::QxSqlRelationLinked::hierarchyOnAfterSave | ( | QxSqlRelationParams & | params | ) |
QSqlError qx::QxSqlRelationLinked::hierarchyOnBeforeSave | ( | QxSqlRelationParams & | params | ) |
void qx::QxSqlRelationLinked::hierarchyResolveOutput | ( | QxSqlRelationParams & | params | ) |
void qx::QxSqlRelationLinked::hierarchySelect | ( | QxSqlRelationParams & | params | ) |
void qx::QxSqlRelationLinked::hierarchyWhereSoftDelete | ( | QxSqlRelationParams & | params | ) |
qx_bool qx::QxSqlRelationLinked::insertRelationToHierarchy | ( | const QStringList & | sRelationX, |
const QString & | sKey, | ||
qx::dao::sql_join::join_type | eJoinType | ||
) | [protected] |
bool qx::QxSqlRelationLinked::isValidDaoHelper | ( | QxSqlRelationParams & | params | ) | const [protected] |
QStringList qx::QxSqlRelationLinked::removeColumns | ( | const QStringList & | columnsToRemove, |
IxSqlRelation * | pRelation | ||
) | const [protected] |
void qx::QxSqlRelationLinked::setRootColumnsOffset | ( | long | l | ) |
void qx::QxSqlRelationLinked::updateOffset | ( | QxSqlRelationParams & | params | ) |
std::unique_ptr<QxSqlRelationLinkedImpl> qx::QxSqlRelationLinked::m_pImpl [private] |
Private implementation idiom.
Definition at line 87 of file QxSqlRelationLinked.h.