QxOrm  1.4.2
C++ Object Relational Mapping library

Common interface (abstract class) for persistents classes using QX_PERSISTABLE_HPP() and QX_PERSISTABLE_CPP() macros. More...

#include <boost/type_traits/is_base_of.hpp>
#include <QxDao/QxSqlQuery.h>
#include <QxDao/QxDao.h>
#include <QxRegister/QxClass.h>
#include <QxCollection/QxCollection.h>
#include <QxTraits/get_primary_key.h>
#include <QxValidator/QxInvalidValueX.h>
#include <QxValidator/QxValidatorFct.h>

Go to the source code of this file.

Classes

class  qx::IxPersistable
 qx::IxPersistable : common interface (abstract class) for persistents classes using QX_PERSISTABLE_HPP() and QX_PERSISTABLE_CPP() macros More...
class  qx::IxPersistableCollection< T >
 qx::IxPersistableCollection<T>::type : return the collection type used by qx::IxPersistable interface, qx::QxCollection<type_primary_key, qx_shared_ptr<my_type>> More...
struct  qx::trait::is_ix_persistable< T >
 qx::trait::is_ix_persistable<T>::value : return true if T implements qx::IxPersistable interface, otherwise return false More...

Namespaces

namespace  qx
 

Root namespace for all QxOrm library features.


namespace  qx::trait
 

QxOrm library traits (template metaprogramming) not available in boost::type_traits library.


Defines

#define QX_PERSISTABLE_HPP(className)
#define QX_PERSISTABLE_CAST_COLLECTION(className)   qx::IxPersistableCollection< className >::type * list_typed = dynamic_cast< qx::IxPersistableCollection< className >::type * >(& list);
#define QX_PERSISTABLE_CPP(className)

Typedefs

typedef qx_shared_ptr
< qx::IxPersistable
qx::IxPersistable_ptr

Detailed Description

Common interface (abstract class) for persistents classes using QX_PERSISTABLE_HPP() and QX_PERSISTABLE_CPP() macros.

Author:
Lionel Marty

Definition in file IxPersistable.h.


Define Documentation

#define QX_PERSISTABLE_CAST_COLLECTION (   className)    qx::IxPersistableCollection< className >::type * list_typed = dynamic_cast< qx::IxPersistableCollection< className >::type * >(& list);

Definition at line 397 of file IxPersistable.h.

#define QX_PERSISTABLE_CPP (   className)

Definition at line 401 of file IxPersistable.h.

#define QX_PERSISTABLE_HPP (   className)
Value:
public: \
virtual long qxCount(const qx::QxSqlQuery & query = qx::QxSqlQuery(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxCount(long & lCount, const qx::QxSqlQuery & query = qx::QxSqlQuery(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxFetchById(const QVariant & id = QVariant(), const QStringList & columns = QStringList(), const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxFetchAll(qx::IxCollection & list, const QStringList & columns = QStringList(), const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxFetchByQuery(const qx::QxSqlQuery & query, qx::IxCollection & list, const QStringList & columns = QStringList(), const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxInsert(const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxUpdate(const qx::QxSqlQuery & query = qx::QxSqlQuery(), const QStringList & columns = QStringList(), const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxSave(const QStringList & relation = QStringList(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDeleteById(const QVariant & id = QVariant(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDeleteAll(QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDeleteByQuery(const qx::QxSqlQuery & query, QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDestroyById(const QVariant & id = QVariant(), QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDestroyAll(QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxDestroyByQuery(const qx::QxSqlQuery & query, QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxExecuteQuery(qx::QxSqlQuery & query, QSqlDatabase * pDatabase = NULL); \
virtual QSqlError qxExecuteQuery(qx::QxSqlQuery & query, qx::IxCollection & list, QSqlDatabase * pDatabase = NULL); \
virtual qx_bool qxExist(const QVariant & id = QVariant(), QSqlDatabase * pDatabase = NULL); \
virtual qx::QxInvalidValueX qxValidate(const QStringList & groups = QStringList()); \
virtual qx::IxCollection_ptr qxNewPersistableCollection() const; \
virtual qx::IxClass * qxClass() const;

Definition at line 370 of file IxPersistable.h.