![]() |
QxOrm 1.4.9
C++ Object Relational Mapping library
|
qx::QxSqlRelation<DataType, Owner> : base class for all relationships defined between 2 classes (or between 2 tables in database) More...
#include <QxSqlRelation.h>
Classes | |
struct | createItem_Helper |
struct | createItem_Helper< true, dummy > |
struct | getContainer_Helper |
struct | getContainer_Helper< false, true, dummy > |
struct | getContainer_Helper< true, false, dummy > |
struct | getContainer_Helper< true, true, dummy > |
struct | getData_Helper |
struct | getData_Helper< false, true, dummy > |
struct | getData_Helper< true, false, dummy > |
struct | getData_Helper< true, true, dummy > |
struct | isNullData_Helper |
struct | isNullData_Helper< true, dummy > |
Public Member Functions | |
QxSqlRelation (IxDataMember *p) | |
virtual | ~QxSqlRelation () |
virtual void | init () |
![]() | |
IxSqlRelation (IxDataMember *p) | |
virtual | ~IxSqlRelation ()=0 |
QxCollection< QString, IxDataMember * > * | getLstDataMember () const |
IxSqlRelationX * | getLstRelation () const |
void | setSqlJoinType (qx::dao::sql_join::join_type e) |
qx::dao::sql_join::join_type | getSqlJoinType () const |
relation_type | getRelationType () const |
IxClass * | getClass () const |
IxClass * | getClassOwner () const |
IxDataMember * | getDataMember () const |
IxDataMemberX * | getDataMemberX () const |
IxDataMember * | getDataId () const |
IxDataMember * | getDataIdOwner () const |
QString | getKey () const |
QString | getForeignKey () const |
QString | getForeignKeyOwner () const |
QString | getForeignKeyDataType () const |
QString | getExtraTable () const |
long | getDataCount () const |
long | getRelationCount () const |
IxDataMember * | getDataByKey (const QString &sKey) const |
IxDataMember * | nextData (long &lIndex) const |
IxSqlRelation * | nextRelation (long &lIndex) const |
QString | table () const |
QString | tableAlias (QxSqlRelationParams ¶ms) const |
QString | tableAliasOwner (QxSqlRelationParams ¶ms) const |
QString | getSqlJoin (qx::dao::sql_join::join_type e=qx::dao::sql_join::no_join) const |
bool | traceSqlQuery () const |
virtual QString | getDescription () const =0 |
virtual QString | createExtraTable () const =0 |
virtual bool | getCartesianProduct () const =0 |
virtual QVariant | getIdFromQuery (bool bEager, QxSqlRelationParams ¶ms, int iOffset, int iNameIndex) const =0 |
virtual void | updateOffset (bool bEager, QxSqlRelationParams ¶ms) const =0 |
virtual void | createTable (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazySelect (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerSelect (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFrom (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerFrom (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyJoin (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerJoin (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyWhere (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerWhere (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyWhereSoftDelete (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerWhereSoftDelete (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFetch_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | eagerFetch_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyFetch_ResolveOutput (QxSqlRelationParams ¶ms) const =0 |
virtual void * | eagerFetch_ResolveOutput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert_Values (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyUpdate (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyInsert_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual void | lazyUpdate_ResolveInput (QxSqlRelationParams ¶ms) const =0 |
virtual QSqlError | onBeforeSave (QxSqlRelationParams ¶ms) const =0 |
virtual QSqlError | onAfterSave (QxSqlRelationParams ¶ms) const =0 |
bool | verifyOffset (QxSqlRelationParams ¶ms, bool bId) const QX_USED |
![]() | |
QxPropertyBag () | |
virtual | ~QxPropertyBag () |
void | setPropertyBag (const QString &key, const QVariant &value) |
QVariant | getPropertyBag (const QString &key) const |
void | removePropertyBag (const QString &key) |
void | clearPropertyBag () |
long | countPropertyBag () const |
QList< QString > | getAllPropertyBagKeys () const |
Protected Types | |
enum | { is_valid = (qx::trait::is_qx_registered<type_data>::value && qx::trait::is_qx_registered<type_owner>::value) } |
enum | { is_data_pointer = (std::is_pointer<DataType>::value || qx::trait::is_smart_ptr<DataType>::value) } |
enum | { is_data_container = qx::trait::is_container<type_container>::value } |
enum | { is_same_data_owner = std::is_same<type_data, type_owner>::value } |
typedef qx::trait::remove_attr< DataType >::type | type_tmp_1 |
typedef qx::trait::remove_smart_ptr< type_tmp_1 >::type | type_tmp_2 |
typedef type_tmp_2 | type_container |
typedef qx::trait::generic_container< type_container > | type_generic_container |
typedef type_generic_container::type_item | type_item |
typedef std::conditional< qx::trait::is_container< type_container >::value, typenametype_generic_container::type_value_qx, type_container >::type | type_tmp_3 |
typedef QxSqlRelation< DataType, Owner >::type_tmp_3 | type_data |
typedef Owner | type_owner |
![]() | |
typedef QHash< QString, QVariant > | type_hash_prop_bag |
typedef std::shared_ptr< type_hash_prop_bag > | type_hash_prop_bag_ptr |
Additional Inherited Members | |
![]() | |
enum | relation_type { no_relation , one_to_one , one_to_many , many_to_one , many_to_many } |
![]() | |
static void | setTraceRelationInit (bool bTrace) |
![]() | |
type_hash_prop_bag_ptr | m_lstPropertyBag |
List of all properties in the bag (meta-data) | |
qx::QxSqlRelation<DataType, Owner> : base class for all relationships defined between 2 classes (or between 2 tables in database)
Definition at line 69 of file QxSqlRelation.h.
|
protected |
Definition at line 76 of file QxSqlRelation.h.
|
protected |
Definition at line 80 of file QxSqlRelation.h.
|
protected |
Definition at line 77 of file QxSqlRelation.h.
|
protected |
Definition at line 78 of file QxSqlRelation.h.
|
protected |
Definition at line 81 of file QxSqlRelation.h.
|
protected |
Definition at line 74 of file QxSqlRelation.h.
|
protected |
Definition at line 75 of file QxSqlRelation.h.
|
protected |
Definition at line 79 of file QxSqlRelation.h.
|
protected |
Enumerator | |
---|---|
is_data_pointer |
Definition at line 84 of file QxSqlRelation.h.
|
protected |
Enumerator | |
---|---|
is_data_container |
Definition at line 85 of file QxSqlRelation.h.
|
protected |
Enumerator | |
---|---|
is_same_data_owner |
Definition at line 86 of file QxSqlRelation.h.
|
protected |
Enumerator | |
---|---|
is_valid |
Definition at line 83 of file QxSqlRelation.h.
|
inline |
Definition at line 90 of file QxSqlRelation.h.
|
inlinevirtual |
Definition at line 91 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 127 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 120 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 114 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 111 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 108 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 102 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 105 of file QxSqlRelation.h.
|
inlinevirtual |
Reimplemented from qx::IxSqlRelation.
Definition at line 93 of file QxSqlRelation.h.
|
inlineprotected |
Definition at line 117 of file QxSqlRelation.h.