QxOrm 1.1.8
C++ Object Relational Mapping library

qx::QxSqlQueryBuilder<T> : concrete SQL query builder for the class T with a cache mechanism to backup and restore queries already builded by the program More...

#include <QxSqlQueryBuilder.h>

Inheritance diagram for qx::QxSqlQueryBuilder< T >:
qx::IxSqlQueryBuilder

List of all members.

Public Types

typedef qx::QxSqlQueryBuilder
< T >::type_sql_tmp_2 
type_sql

Public Member Functions

 QxSqlQueryBuilder ()
 QxSqlQueryBuilder (const QString &sql)
virtual ~QxSqlQueryBuilder ()
virtual IxDataMemberXgetDataMemberX () const
virtual IxSqlQueryBuildercount ()
virtual IxSqlQueryBuilderexist ()
virtual IxSqlQueryBuilderfetchAll ()
virtual IxSqlQueryBuilderfetchById ()
virtual IxSqlQueryBuilderinsert ()
virtual IxSqlQueryBuilderupdate ()
virtual IxSqlQueryBuilderdeleteAll ()
virtual IxSqlQueryBuildersoftDeleteAll ()
virtual IxSqlQueryBuilderdeleteById ()
virtual IxSqlQueryBuildersoftDeleteById ()
virtual IxSqlQueryBuildercreateTable ()
virtual IxSqlQueryBuilderfetchAll_WithRelation (IxSqlRelationX *pRelationX)
virtual IxSqlQueryBuilderfetchById_WithRelation (IxSqlRelationX *pRelationX)
virtual IxSqlQueryBuilderfetchAll (const QStringList &columns)
virtual IxSqlQueryBuilderfetchById (const QStringList &columns)
virtual IxSqlQueryBuilderupdate (const QStringList &columns)
virtual void init ()

Protected Attributes

QxDataMemberX< type_sql > * m_pDataMemberX
 'QxDataMemberX' singleton

Static Protected Attributes

static QxCollection< QString,
IxDataMember * > 
m_lstDataMember
 Collection of 'IxDataMember' to build SQL query.
static IxSqlRelationX m_lstSqlRelation
 Collection of 'IxSqlRelation' to build SQL query.
static QMutex m_oMutex
 Mutex => 'QxSqlQueryBuilder' is thread-safe.

Private Types

typedef qx::trait::remove_attr
< T >::type 
type_sql_tmp_1
typedef
qx::trait::remove_smart_ptr
< type_sql_tmp_1 >::type 
type_sql_tmp_2

Private Member Functions

IxDataMemberisValid_DataMember (long lIndex) const
IxDataMemberisValid_SqlRelation (long lIndex) const
bool verifyColumns (const QStringList &columns) const

Detailed Description

template<class T>
class qx::QxSqlQueryBuilder< T >

qx::QxSqlQueryBuilder<T> : concrete SQL query builder for the class T with a cache mechanism to backup and restore queries already builded by the program

Definition at line 71 of file QxSqlQueryBuilder.h.


Member Typedef Documentation

Definition at line 81 of file QxSqlQueryBuilder.h.

template<class T>
typedef qx::trait::remove_attr<T>::type qx::QxSqlQueryBuilder< T >::type_sql_tmp_1 [private]

Definition at line 76 of file QxSqlQueryBuilder.h.

template<class T>
typedef qx::trait::remove_smart_ptr<type_sql_tmp_1>::type qx::QxSqlQueryBuilder< T >::type_sql_tmp_2 [private]

Definition at line 77 of file QxSqlQueryBuilder.h.


Constructor & Destructor Documentation

template<class T>
qx::QxSqlQueryBuilder< T >::QxSqlQueryBuilder ( ) [inline]

Definition at line 93 of file QxSqlQueryBuilder.h.

template<class T>
qx::QxSqlQueryBuilder< T >::QxSqlQueryBuilder ( const QString &  sql) [inline]

Definition at line 94 of file QxSqlQueryBuilder.h.

template<class T>
virtual qx::QxSqlQueryBuilder< T >::~QxSqlQueryBuilder ( ) [inline, virtual]

Definition at line 95 of file QxSqlQueryBuilder.h.


Member Function Documentation

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::count ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 99 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::createTable ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 187 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::deleteAll ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 151 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::deleteById ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 168 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::exist ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 108 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 117 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll ( const QStringList &  columns) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 214 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchAll_WithRelation ( IxSqlRelationX pRelationX) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 195 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById ( const QStringList &  columns) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 225 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 125 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::fetchById_WithRelation ( IxSqlRelationX pRelationX) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 204 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxDataMemberX* qx::QxSqlQueryBuilder< T >::getDataMemberX ( ) const [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 97 of file QxSqlQueryBuilder.h.

template<class T>
virtual void qx::QxSqlQueryBuilder< T >::init ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 249 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::insert ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 134 of file QxSqlQueryBuilder.h.

template<class T>
IxDataMember* qx::QxSqlQueryBuilder< T >::isValid_DataMember ( long  lIndex) const [inline, private]

Definition at line 266 of file QxSqlQueryBuilder.h.

template<class T>
IxDataMember* qx::QxSqlQueryBuilder< T >::isValid_SqlRelation ( long  lIndex) const [inline, private]

Definition at line 274 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::softDeleteAll ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 159 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::softDeleteById ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 177 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::update ( ) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 142 of file QxSqlQueryBuilder.h.

template<class T>
virtual IxSqlQueryBuilder& qx::QxSqlQueryBuilder< T >::update ( const QStringList &  columns) [inline, virtual]

Implements qx::IxSqlQueryBuilder.

Definition at line 237 of file QxSqlQueryBuilder.h.

template<class T>
bool qx::QxSqlQueryBuilder< T >::verifyColumns ( const QStringList &  columns) const [inline, private]

Definition at line 285 of file QxSqlQueryBuilder.h.


Member Data Documentation

template<class T>
QxCollection< QString, IxDataMember * > qx::QxSqlQueryBuilder< T >::m_lstDataMember [static, protected]

Collection of 'IxDataMember' to build SQL query.

Definition at line 87 of file QxSqlQueryBuilder.h.

template<class T>
IxSqlRelationX qx::QxSqlQueryBuilder< T >::m_lstSqlRelation [static, protected]

Collection of 'IxSqlRelation' to build SQL query.

Definition at line 88 of file QxSqlQueryBuilder.h.

template<class T>
QMutex qx::QxSqlQueryBuilder< T >::m_oMutex [static, protected]

Mutex => 'QxSqlQueryBuilder' is thread-safe.

Definition at line 89 of file QxSqlQueryBuilder.h.

template<class T>
QxDataMemberX<type_sql>* qx::QxSqlQueryBuilder< T >::m_pDataMemberX [protected]

'QxDataMemberX' singleton

Definition at line 85 of file QxSqlQueryBuilder.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines