1#ifndef INC_GLOTRANSACTIONMANAGER_H
2#define INC_GLOTRANSACTIONMANAGER_H
50#include <unordered_map>
53#if defined(_MSC_VER) || defined(__MINGW32__) || defined(__MINGW64__)
55#elif defined(__GNUC__)
56 #define INT_PTR intptr_t
72 #pragma warning( disable : 4251 )
520 bool bLocalCopy =
false );
1185 const ObjID & rObjID,
1186 const std::string & rsDataPath,
1187 bool bInRecursion =
false );
1223 const ObjID & rObjID,
1224 const std::string & rsDataPath,
1225 bool bInRecursion =
false );
1329 #pragma warning( default : 4251 )
Header für TransactionOwner
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:70
OberKlasse von LocalThread, ClientThread und ServerThread, weil diese als Sender und Empfänger (Kommu...
Definition GloCommunicator.h:93
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:84
Objekte dieser Klasse transportieren die Daten von den Tabellen ins persistente Objekt und von diesen...
Definition GloRecord.h:108
Der Transaktions-Stack eines Client-Kommunikators mit Thread-ID für eine Datenbank.
Definition GloTransactionManager.h:698
CommunicatorTransactionStack(const TransactionOwner &rCommunicatorWithTreadID)
CommunicatorTransactionStack()
int setTransactionStep(NUM_PTR &nNewTrxStepAddr, EnStoreDelete eAction, Record *pActionRecord)
TransactionOwner m_CommunicatorWithTreadID
Definition GloTransactionManager.h:711
TransactionOwner getCommunicator()
CommunicatorTransactionStack(const CommunicatorTransactionStack &)
std::list< TransactionManager::TransactionBase * > & getTransactionStack()
~CommunicatorTransactionStack()
std::list< TransactionBase * > m_TransactionStack
Definition GloTransactionManager.h:724
bool abortTransaction(std::list< TransactionBase * > &rAbortedTransactionStepList)
int m_iCurrentTransactionPoint
Definition GloTransactionManager.h:735
Basisklasse für TransactionPoint und TransactionStep.
Definition GloTransactionManager.h:224
virtual ~TransactionBase()
TransactionBase(const TransactionBase &)
Objekte dieser Klasse spiegeln einen Transaktions-Start wieder.
Definition GloTransactionManager.h:299
virtual ~TransactionPoint()
TransactionPoint(int iCount)
TransactionPoint(const TransactionPoint &)
int m_iCount
Definition GloTransactionManager.h:316
Objekte dieser Klasse spiegeln eine Datensatz-Operation wieder.
Definition GloTransactionManager.h:428
TransactionStep(EnStoreDelete eAction, Record *pActionRecord, bool bLocalCopy=false)
TransactionManager::EnStoreDelete m_eAction
Definition GloTransactionManager.h:467
bool m_bLocalCopyRecord
Definition GloTransactionManager.h:444
TransactionStep(const TransactionStep &)
ObjID getActionRecordObjID() const
TransactionManager::EnStoreDelete getAction() const
int takeOverObjIDsFilePos(const Record &rSourceRecord)
void getActionRecord(Record *&prRetVal) const
Record * m_pActionRecord
Definition GloTransactionManager.h:455
const Record * getActionRecord() const
virtual ~TransactionStep()
Klasse um Transaktionen zu gewährleisten.
Definition GloTransactionManager.h:172
std::map< TransactionOwner, CommunicatorTransactionStack * >::iterator m_TransactionStackMapIterator
Definition GloTransactionManager.h:968
EnStoreDelete
Definition GloTransactionManager.h:186
std::map< TransactionOwner, CommunicatorTransactionStack *, std::less< TransactionOwner > > m_TransactionStackMap
Definition GloTransactionManager.h:957
TransactionManager::CommunicatorTransactionStack * getTransactionStack(const TransactionOwner &rCommunicatorWithTreadID)
virtual ~TransactionManager()
int getActionRecord(Record *&prRetVal, EnStoreDelete &reAction, const TransactionOwner &rCommunicatorWithTreadID, const ObjID &rObjID, const std::string &rsDataPath, bool bInRecursion=false)
void beginTransaction(const TransactionOwner &rCommunicatorWithTreadID)
int commitTransaction(CommunicatorTransactionStack *&prRetVal, const TransactionOwner &rCommunicatorWithTreadID)
int setTransactionStep(NUM_PTR &nNewTrxStepAddr, const TransactionOwner &rCommunicatorWithTreadID, EnStoreDelete eAction, Record *pActionRecord)
std::unordered_map< ObjID, Record *, glo::ObjID::HashFunction > m_RecursionRecordMap
Definition GloTransactionManager.h:980
void removeCurrentTransactionStack()
void deleteAllTransactions(Communicator *pCommunicator)
bool inTransaction(const TransactionOwner &rCommunicatorWithTreadID) const
int writeTransactionFile(CommunicatorTransactionStack *pTransactionStack)
int getActionRecord(std::shared_ptr< Record > &rRetVal, EnStoreDelete &reAction, const TransactionOwner &rCommunicatorWithTreadID, const ObjID &rObjID, const std::string &rsDataPath, bool bInRecursion=false)
int abortTransaction(std::list< TransactionBase * > &rAbortedTransactionStepList, const TransactionOwner &rCommunicatorWithTreadID)
TransactionManager(const TransactionManager &)
Um Transaktionen nicht nur einem glo::Communicator zur Verfügung zu stellen, sondern auch einzelnen T...
Definition GloTransactionOwner.h:81
Definition GloAbstractBaseLot.h:49