1#ifndef INC_GLOBASEPERSISTENT_H
2#define INC_GLOBASEPERSISTENT_H
42#include "GloLockSpecification.h"
43#include "GloWatchSpecification.h"
44#if defined (__PTHREADS)
45 #include <EuPCriticalSection.h>
47 #include "EuCriticalSection.h"
58 class BaseRecordAttribute;
62 #pragma warning( disable : 4251 )
127 friend class PrivateBase;
157 #if defined (__PTHREADS)
158 EuPCriticalSection m_LocalCriticalSection;
476 int getRecord( std::shared_ptr<Record> & rRetVal )
const;
496 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
518 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
554 const std::string & sName )
const;
577 const std::string & sName )
const;
609 const AttributeID & rAttributeID)
const;
629 const AttributeID & rAttributeID )
const;
663 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
685 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
719 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
741 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
777 const std::vector<unsigned long> * pClassIdVector = 0)
const;
801 const std::vector<unsigned long> * pClassIdVector = 0 )
const;
848 virtual int store( EnDeepMode eDeepMode = DM_SHALLOW );
943 virtual int lock( EnLockMode eLockMode = LK_DELETEvWRITE,
944 EnDeepMode eDeepMode = DM_SHALLOW );
970 virtual int lock(
const LockSpecification & rLockSpecification );
1005 virtual int relock( EnLockMode eLockMode = LK_DELETEvWRITE,
1006 EnDeepMode eDeepMode = DM_SHALLOW );
1043 virtual int relock(
const LockSpecification & rLockSpecification );
1070 virtual int unlock( EnLockMode eLockMode = LK_DELETEvWRITE,
1071 EnDeepMode eDeepMode = DM_SHALLOW);
1099 virtual int unlock(
const LockSpecification & rLockSpecification );
1130 virtual int isLocked( EnLockMode eLockMode = LK_DELETEvWRITE,
1131 EnDeepMode eDeepMode = DM_SHALLOW )
const;
1153 virtual int isLocked(
const LockSpecification & rLockSpecification )
const;
1181 EnDeepMode eDeepMode = DM_SHALLOW )
const;
1202 virtual int isPossible(
const LockPossibleSpecification & rLockPossibleSpec,
1203 EnDeepMode eDeepMode = DM_SHALLOW )
const;
1223 EnDeepMode eDeepMode = DM_SHALLOW )
const;
1287 EnDeepMode eDeepMode,
1322 virtual int setWatch(
const WatchSpecification & rWatchSpec );
1386 EnDeepMode eDeepMode,
1520 #pragma warning( default : 4251 )
Abstrakte Basisklasse für Persistent und die generische GenericPersistent.
Definition GloBasePersistent.h:116
virtual int isPossible(const LockPossibleSpecification &rLockPossibleSpec, EnDeepMode eDeepMode=DM_SHALLOW) const
virtual int getProcessingPossibilities(LockPossibleSpecification &rLockPossibleSpec, EnDeepMode eDeepMode=DM_SHALLOW) const
virtual int lock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW)
virtual int unsetWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0)
virtual int isPossible(bool bRead, bool bWrite, bool bDelete, EnDeepMode eDeepMode=DM_SHALLOW) const
virtual bool isAssigned() const
int getRecord(Record *&prRecord) const
virtual unsigned int forget()
eut::CriticalSection m_LocalCriticalSection
Definition GloBasePersistent.h:160
virtual int assign(Base &rBase)
virtual int unsetWatch(const WatchSpecification &rWatchSpec)
virtual bool isDeletedInBase()
virtual int getTypeAsString(std::string &rsTypeName) override
virtual int setWatch(TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0)
int getAllPersAttributesSortByName(std::map< std::string, BaseRecordAttribute *, std::less< std::string > > &rRetValMap, const std::vector< unsigned long > *pClassIdVector=0) const
virtual int isLocked(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) const
virtual std::time_t getLastChangeDate() const =0
int getAllPersAttributesSortByName(std::map< std::string, std::shared_ptr< BaseRecordAttribute >, std::less< std::string > > &rRetValMap, const std::vector< unsigned long > *pClassIdVector=0) const
int getPersAttribute(std::shared_ptr< BaseRecordAttribute > &rRetVal, const std::string &sName) const
virtual int unlock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW)
virtual int unlock(const LockSpecification &rLockSpecification)
unsigned int getLinkCount() const
int getAllPersAttributeNamesSortByID(std::map< AttributeID, std::string > &rRetValMap, const std::vector< unsigned long > *pClassIdVector=0) const
virtual void setCreateDate()=0
virtual int relock(EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW)
int getAllPersAttributes(std::list< BaseRecordAttribute * > &rRetValList, const std::vector< unsigned long > *pClassIdVector=0) const
virtual void takeOverRecord(Record *pRecord)
int getRecord(std::shared_ptr< Record > &rRetVal) const
virtual int deleteInBase(EnDeepMode eDeepMode=DM_SHALLOW)
virtual void insertInObjectSpy() const =0
int getAllPersAttributesSortByID(std::map< AttributeID, BaseRecordAttribute *, std::less< AttributeID > > &rRetValMap, const std::vector< unsigned long > *pClassIdVector=0) const
virtual unsigned int remember()
virtual ~BasePersistent()
bool m_bSpyaction
Definition GloBasePersistent.h:197
virtual int lock(const LockSpecification &rLockSpecification)
int getAllPersAttributes(std::list< std::shared_ptr< BaseRecordAttribute > > &rRetValList, const std::vector< unsigned long > *pClassIdVector=0) const
void setSpyaction(bool bSpyaction)
BasePersistent(const BasePersistent &)
virtual int relock(const LockSpecification &rLockSpecification)
virtual int getClassInfo(ClassInfo *&prClassInfo)
virtual std::time_t getCreateDate() const =0
virtual void removeBase()
int getPersAttribute(std::shared_ptr< BaseRecordAttribute > &rRetVal, const AttributeID &rAttributeID) const
virtual int isLocked(const LockSpecification &rLockSpecification) const
virtual void removeInObjectSpy() const =0
int getAllPersAttributeNames(std::list< std::string > &rRetValList, const std::vector< unsigned long > *pClassIdVector=0) const
int getPersAttribute(BaseRecordAttribute *&prRetVal, const std::string &sName) const
unsigned int m_uiReferenceCount
Definition GloBasePersistent.h:142
virtual unsigned long getGloClassID() const =0
virtual int store(EnDeepMode eDeepMode=DM_SHALLOW)
int getAllPersAttributesSortByID(std::map< AttributeID, std::shared_ptr< BaseRecordAttribute >, std::less< AttributeID > > &rRetValMap, const std::vector< unsigned long > *pClassIdVector=0) const
Record * m_pRecord
Definition GloBasePersistent.h:174
int getPersAttribute(BaseRecordAttribute *&prRetVal, const AttributeID &rAttributeID) const
virtual int setWatch(const WatchSpecification &rWatchSpec)
virtual ObjID getObjID() const
Oberklasse für die Klassen, welche mit einer Base 'verbunden' sind.
Definition GloCallBack.h:74
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:77
Definition GloBasePersistent.h:52