1#ifndef INC_GLOPERSISTENT_H
2#define INC_GLOPERSISTENT_H
46#include "GloPersObjectSpy.h"
47#include "GloAttributeID.h"
50#include "GloTPointerSet.h"
51#include "GloTOndemandSet.h"
52#include "GloTPointerList.h"
53#include "GloTOndemandList.h"
54#include "EuException.h"
82#define GLO_OBJECT(...) \
84 static unsigned long getStaticGloClassID(); \
85 static bool isStaticSubClassID( unsigned long ulSubClassID ); \
86 static bool isStaticSuperClassID( unsigned long ulSuperClassID ); \
87 virtual unsigned long getGloClassID() const override; \
88 virtual int getTypeAsString( std::string & rsTypeName ) override; \
89 virtual int setGloAttribute( const glo::AttributeID & rAttributeID, void * pPara ) override; \
90 virtual void * getGloAttribute( const glo::AttributeID & rAttributeID ) override; \
91 virtual int setGloAttribute( const std::string & rstrAttributeName, void * pPara ) override; \
92 virtual void * getGloAttribute( const std::string & rstrAttributeName ) override; \
93 virtual bool isSameOrSuperClassFrom( const glo::Persistent * pPersistent ) const override; \
94 virtual bool isSameOrSuperClassFrom( const std::shared_ptr<glo::Persistent> spPersistent ) const override; \
95 virtual void _postAssign( glo::Base & rBase ) override; \
82#define GLO_OBJECT(...) \ …
137#define GLO_INDEX(...)
140#define GLO_ANNOTATE_ACCESS_SPECIFIER(x)
147#define GLO_PERSISTENT_AREA GLO_ANNOTATE_ACCESS_SPECIFIER(x)
169#define persistent GLO_PERSISTENT_AREA
184#define transient GLO_PERSISTENT_AREA
389 virtual int assign( Base & rBase )
override;
495 virtual int preStore( EnDeepMode eDeepMode,
void *& prData );
531 virtual int store( EnDeepMode eDeepMode = DM_SHALLOW )
override;
557 virtual void postStore(
int iStoreErr, EnDeepMode eDeepMode,
void * pData );
628 virtual int deleteInBase( EnDeepMode eDeepMode = DM_SHALLOW )
override;
794 virtual int preLock( EnLockMode eLockMode, EnDeepMode eDeepMode,
void *& prData );
833 virtual int lock( EnLockMode eLockMode = LK_DELETEvWRITE,
834 EnDeepMode eDeepMode = DM_SHALLOW )
override;
871 virtual int lock(
const LockSpecification & rLockSpecification )
override;
919 EnDeepMode eDeepMode = DM_SHALLOW )
override;
964 virtual int lockAndRefresh(
const LockSpecification & rLockSpecification )
override;
994 virtual void postLock(
int iLockErr, EnLockMode eLockMode, EnDeepMode eDeepMode,
void * pData );
1037 virtual int preRelock( EnLockMode eLockMode, EnDeepMode eDeepMode,
void *& prData );
1086 virtual int relock( EnLockMode eLockMode = LK_DELETEvWRITE,
1087 EnDeepMode eDeepMode = DM_SHALLOW )
override;
1134 virtual int relock(
const LockSpecification & rLockSpecification )
override;
1187 EnDeepMode eDeepMode = DM_SHALLOW )
override;
1267 virtual void postRelock(
int iLockErr, EnLockMode eLockMode, EnDeepMode eDeepMode,
void * pData );
1310 virtual int preUnlock( EnLockMode eLockMode, EnDeepMode eDeepMode,
void *& prData );
1351 virtual int unlock( EnLockMode eLockMode = LK_DELETEvWRITE,
1352 EnDeepMode eDeepMode = DM_SHALLOW )
override;
1391 virtual int unlock(
const LockSpecification & rLockSpecification )
override;
1422 virtual void postUnlock(
int iUnlockErr, EnLockMode eLockMode, EnDeepMode eDeepMode,
void * pData );
1475 EnDeepMode eDeepMode,
1551 EnDeepMode eDeepMode,
1552 CallBack * pCallBack = 0 )
override;
1594 TdWatchNotifyMode ulWatchMode,
1595 EnDeepMode eDeepMode,
1650 EnDeepMode eDeepMode,
1725 EnDeepMode eDeepMode,
1726 CallBack * pCallBack = 0 )
override;
1767 TdWatchNotifyMode ulWatchMode,
1768 EnDeepMode eDeepMode,
Header für BasePersistent
Header und Source für TOndemand
Oberklasse für die Klassen, welche mit einer Base 'verbunden' sind.
Definition GloCallBack.h:81
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:84
Die Basisklasse der persistenten Klassen. Von dieser Klasse müssen alle persistenten Klassen abgeleit...
Definition GloPersistent.h:245
virtual int setGloAttribute(const AttributeID &rAttributeID, void *pPara)
virtual int setWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) override
virtual int preDeleteInBase(EnDeepMode eDeepMode, void *&prData)
virtual void removeInObjectSpy() const override
virtual int lock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) override
virtual unsigned long getGloClassID() const override
virtual int refresh() override
virtual int store(EnDeepMode eDeepMode=DM_SHALLOW) override
virtual void * getGloAttribute(const AttributeID &rAttributeID)
std::time_t m_dtCreateDate
Definition GloPersistent.h:271
virtual int unlock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) override
virtual int unsetWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) override
virtual int lockAndRefresh(const LockSpecification &rLockSpecification) override
static bool isStaticSuperClassID(unsigned long ulSuperClassID)
static bool isStaticSubClassID(unsigned long ulSubClassID)
virtual int relock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) override
virtual void _postAssign(Base &rBase)
Persistent(const Persistent &rT)
ObjID m_ObjID
Definition GloPersistent.h:259
virtual void postSetWatch(int iSetWatchErr, TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack, void *pData)
virtual void takeOverRecord(Record *pRecord) override
virtual int assign(Base &rBase) override
virtual std::time_t getCreateDate() const override
virtual void * getGloAttribute(const std::string &rstrAttributName)
virtual ObjID getObjID() const override
std::time_t m_dtLastChange
Definition GloPersistent.h:284
virtual void setCreateDate() override
static unsigned long getStaticGloClassID()
virtual int preLock(EnLockMode eLockMode, EnDeepMode eDeepMode, void *&prData)
virtual void postUnlock(int iUnlockErr, EnLockMode eLockMode, EnDeepMode eDeepMode, void *pData)
virtual void postDeleteInBase(int iDeleteErr, EnDeepMode eDeepMode, void *pData)
virtual void postLock(int iLockErr, EnLockMode eLockMode, EnDeepMode eDeepMode, void *pData)
virtual int deleteInBase(EnDeepMode eDeepMode=DM_SHALLOW) override
virtual bool isSameOrSuperClassFrom(const std::shared_ptr< glo::Persistent > pPersistent) const
Prüft ob übergebenes Objekt auf dieses gecastet werden kann.
virtual void insertInObjectSpy() const override
virtual int getTypeAsString(std::string &rsTypeName) override
virtual int preRelock(EnLockMode eLockMode, EnDeepMode eDeepMode, void *&prData)
virtual int preStore(EnDeepMode eDeepMode, void *&prData)
virtual bool isSameOrSuperClassFrom(const glo::Persistent *pPersistent) const
Prüft ob übergebenes Objekt auf dieses gecastet werden kann.
virtual void removeBase() override
virtual void postRelock(int iLockErr, EnLockMode eLockMode, EnDeepMode eDeepMode, void *pData)
virtual void postStore(int iStoreErr, EnDeepMode eDeepMode, void *pData)
virtual int preRefresh(void *&prData)
virtual int relock(const LockSpecification &rLockSpecification) override
virtual void postRefresh(int iRefreshErr, void *pData)
virtual int preUnsetWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack, void *&prData)
virtual int relockAndRefresh(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) override
virtual int setGloAttribute(const std::string &rstrAttributName, void *pPara)
virtual int preUnlock(EnLockMode eLockMode, EnDeepMode eDeepMode, void *&prData)
virtual int lockAndRefresh(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) override
virtual std::time_t getLastChangeDate() const override
virtual int unlock(const LockSpecification &rLockSpecification) override
virtual int lock(const LockSpecification &rLockSpecification) override
virtual void postUnsetWatch(int iUnsetWatchErr, TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack, void *pData)
virtual int preSetWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack, void *&prData)
virtual int relockAndRefresh(const LockSpecification &rLockSpecification) override
Definition GloBasePersistent.h:60