GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloPrivateBase.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOPRIVATEBASE_H
2#define INC_GLOPRIVATEBASE_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#ifdef _MSC_VER
38 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
39 #pragma warning( disable : 4251 )
40#endif
41//-----------------------------------------------------------------------------
42#include <string>
43#include <vector>
44#include <map>
45#include <list>
46#include "GloTypes.h"
47#include "GloOrderMsg.h"
49#include "GloClientInfo.h"
50#include "GloTOndemand.h"
51//-----------------------------------------------------------------------------
52namespace glo
53{
54 //---------------------------------------------------------------------------
55 /* Forwards */
56 class BasePersistent;
57 class BaseLot;
58 class ClassInfo;
59 class ClassInfoAttribute;
60 class Communicator;
61 class GenPersObjectSpy;
62 class LimitRecord;
63 class ObjCreator;
64 class Persistent;
65 class PersObjectSpy;
66 class ObjectMaker;
67 class IndexQueryBaseStruct;
68 class ObjIDRecordTuple;
69 class IDRecordAttribute;
70 //struct ClientInfo;
71 //---------------------------------------------------------------------------
87 #ifdef _GLO_TEST
88 class __glo_export_dll PrivateBase
89 #else
91 #endif
92 {
93 private:
94 //============== Friends
95 //-----------------------------------------------------------------------
96 friend class Base;
97 friend class ObjectMaker;
99 //-----------------------------------------------------------------------
100
101 private:
102 //============== Attribute
103 //-----------------------------------------------------------------------
114 //-----------------------------------------------------------------------
133 //-----------------------------------------------------------------------
149 std::string m_sServerName;
150 //-----------------------------------------------------------------------
161 std::string m_sBaseName;
162 //-----------------------------------------------------------------------
174 //-----------------------------------------------------------------------
186 //-----------------------------------------------------------------------
200 unsigned int m_uiPort;
201 //-----------------------------------------------------------------------
217 std::string m_sSchemaPath;
218 //-----------------------------------------------------------------------
234 std::string m_sKnownSchemes;
235 //-----------------------------------------------------------------------
248 //-----------------------------------------------------------------------
261 //-----------------------------------------------------------------------
274 //-----------------------------------------------------------------------
287 //-----------------------------------------------------------------------
302 //-----------------------------------------------------------------------
317 //-----------------------------------------------------------------------
331 std::string m_strClientName;
332 //-----------------------------------------------------------------------
333
334 public:
335 //============== Konstruktoren
336 //-----------------------------------------------------------------------
348 //-----------------------------------------------------------------------
359 PrivateBase( const std::string & rstrClientName );
360 //-----------------------------------------------------------------------
371 PrivateBase( const std::string & rstrClientName,
372 const std::string & rstrSchemaPath,
373 const std::string & rstrBaseName );
374 //-----------------------------------------------------------------------
385 PrivateBase( const std::string & rstrClientName,
386 ObjCreator & rObjCreator );
387 //-----------------------------------------------------------------------
398 PrivateBase( const std::string & rstrServerName,
399 const std::string & rstrClientName );
400 //-----------------------------------------------------------------------
411 PrivateBase( const std::string & rstrServerName,
412 const std::string & rstrClientName,
413 int iTimeOutSec,
414 unsigned int uiPort,
415 const std::string & rstrSchemaPath,
416 const std::string & rstrKnownSchemes );
417 //-----------------------------------------------------------------------
428 PrivateBase( const std::string & rstrServerName,
429 const std::string & rstrClientName,
430 ObjCreator & rObjCreator);
431 //-----------------------------------------------------------------------
442 virtual ~PrivateBase ();
443 //-----------------------------------------------------------------------
444
445 private:
446 //============== Konstruktoren
447 //-----------------------------------------------------------------------
458 //-----------------------------------------------------------------------
459
460 #ifdef _GLO_TEST
461 public:
462 #else
463 protected:
464 #endif
465 //============== Get- und Set-Methoden
466 //-----------------------------------------------------------------------
478 int setDbIniName( const std::string & rstrDbIniName );
479 //-----------------------------------------------------------------------
491 std::string getDbIniName() const;
492 //-----------------------------------------------------------------------
503 int getDefaultLimits( std::vector< LimitRecord > *& prRetValVector ) const;
504 //-----------------------------------------------------------------------
515 std::string getServerName() const;
516 //-----------------------------------------------------------------------
527 int getPort( unsigned int & ruiPort );
528 //-----------------------------------------------------------------------
539 int getTimeOutSec( int & riTimeOutSec );
540 //-----------------------------------------------------------------------
551 int setClientName( const std::string & rstrClientName );
552 //-----------------------------------------------------------------------
563 std::string getClientName() const;
564 //-----------------------------------------------------------------------
575 int setSchemaPath( const std::string & rstrSchemaPath );
576 //-----------------------------------------------------------------------
587 int getSchemaPath( std::string & rstrRetVal );
588 //-----------------------------------------------------------------------
599 int getSchemaNameWithPath( std::string & rstrRetVal );
600 //-----------------------------------------------------------------------
611 int setKnownSchemes( const std::string & rstrKnownSchemes );
612 //-----------------------------------------------------------------------
623 int getKnownSchemes( std::vector< std::string > & rRetVal );
624 //-----------------------------------------------------------------------
635 int setBaseName( const std::string & rstrBaseName );
636 //-----------------------------------------------------------------------
647 std::string getBaseName() const;
648 //-----------------------------------------------------------------------
659 unsigned int getCommunicatorID() const;
660 //-----------------------------------------------------------------------
661 #ifdef _GLO_TEST
671 Communicator * getCommunicator();
672 #endif
673 //-----------------------------------------------------------------------
685 //-----------------------------------------------------------------------
686
687 //============== Verbindungs-Methoden
688 //-----------------------------------------------------------------------
699 int connect( CallBack * pServerCrashNotificationCallBack = NULL_PTR );
700 //-----------------------------------------------------------------------
711 int reconnect( CallBack * pServerCrashNotificationCallBack = NULL_PTR );
712 //-----------------------------------------------------------------------
724 //-----------------------------------------------------------------------
735 bool isConnected() const;
736 //-----------------------------------------------------------------------
747 int open( const std::string & rstrBaseName, CallBack * pProgressNotificationCallBack );
748 //-----------------------------------------------------------------------
759 int close( CallBack * pProgressNotificationCallBack );
760 //-----------------------------------------------------------------------
771 bool isOpen() const;
772 //-----------------------------------------------------------------------
783 int openBase( CallBack * pProgressNotificationCallBack,
784 CallBack * pServerCrashNotificationCallBack );
785 //-----------------------------------------------------------------------
796 int openBaseComfortably( CallBack * pProgressNotificationCallBack,
797 CallBack * pServerCrashNotificationCallBack );
798 //-----------------------------------------------------------------------
809 int closeBase( CallBack * pProgressNotificationCallBack );
810 //-----------------------------------------------------------------------
811
812 //============== Reparatur-Methoden
813 //-----------------------------------------------------------------------
824 int reindexBase( const std::string & rstrBaseName,
825 CallBack * pProgressNotificationCallBack );
826 //-----------------------------------------------------------------------
837 int reindexBase( CallBack * pProgressNotificationCallBack );
838 //-----------------------------------------------------------------------
849 int compressBase( const std::string & rstrBaseName,
850 CallBack * pProgressNotificationCallBack );
851 //-----------------------------------------------------------------------
862 int compressBase( CallBack * pProgressNotificationCallBack );
863 //-----------------------------------------------------------------------
874 int repairBase( const std::string & rstrBaseName,
875 CallBack * pProgressNotificationCallBack );
876 //-----------------------------------------------------------------------
887 int repairBase( CallBack * pProgressNotificationCallBack );
888 //-----------------------------------------------------------------------
932 int doWithBase( const std::string & rstrBaseName,
933 CallBack * pCallBack,
934 OrderMsg::EnOrderType eRepairType );
935 //-----------------------------------------------------------------------
936
937 //============== Informatios-Methoden
938 //-----------------------------------------------------------------------
949 int getAllBases( std::vector< std::string > *& prRetValVector ) const;
950 //-----------------------------------------------------------------------
961 int getBaseCount( std::vector<std::string>::size_type & rBaseCount) const;
962 //-----------------------------------------------------------------------
973 int getClassInfo( ClassInfo *& prClassInfo,
974 unsigned long ulClassID,
975 const std::string & rstrBaseName ) const;
976 //-----------------------------------------------------------------------
987 int getClassInfo( ClassInfo *& prClassInfo,
988 const std::string & rstrClassName,
989 const std::string & rstrBaseName ) const;
990 //-----------------------------------------------------------------------
1001 int getSuperClassInfos( std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prSuperClassInfoMap,
1002 unsigned long ulClassID,
1003 const std::string & rstrBaseName );
1004 //-----------------------------------------------------------------------
1015 int getSubClassInfos( std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prSubClassInfoMap,
1016 unsigned long ulClassID,
1017 const std::string & rstrBaseName );
1018 //-----------------------------------------------------------------------
1029 int getAllSuperClassInfos( std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prSuperClassInfoMap,
1030 unsigned long ulClassID,
1031 const std::string & rstrBaseName );
1032 //-----------------------------------------------------------------------
1043 int getAllSubClassInfos( std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prSubClassInfoMap,
1044 unsigned long ulClassID,
1045 const std::string & rstrBaseName );
1046 //-----------------------------------------------------------------------
1057 int getAllClassInfosFromBase( std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prAllClassInfoMap,
1058 const std::string & rstrBaseName);
1059 //-----------------------------------------------------------------------
1070 int isKnownClassID( bool & rbRetVal, unsigned long ulClassID, const std::string & rstrBaseName ) const;
1071 //-----------------------------------------------------------------------
1082 int isSuperClassFrom( bool & rbRetVal,
1083 unsigned long ulClassIDSuperClass,
1084 unsigned long ulClassIDSubClass,
1085 const std::string & rstrBaseName ) const;
1086 //-----------------------------------------------------------------------
1097 int getLimits( LimitRecord *& prLimitRecord,
1098 const ClassInfoAttribute::Type & rClassInfoAttributeType ) const;
1099 //-----------------------------------------------------------------------
1110 int getAllLoggedClients( std::vector< ClientInfo > & rClientInfoVector,
1111 const std::string & rstrBaseName ) const;
1112 //-----------------------------------------------------------------------
1113
1114 //============== Record-Methoden
1115 //-----------------------------------------------------------------------
1126 int getRecord( Record *& prRecord,
1127 const ObjID & rObjID,
1128 unsigned long ulClassID );
1129 //-----------------------------------------------------------------------
1130
1131 //============== Objekt-Methoden
1132 //-----------------------------------------------------------------------
1144 //-----------------------------------------------------------------------
1155 int getAnObject( BasePersistent *& prObject,
1156 const ObjID & rObjID,
1157 bool bGeneric = false );
1158 //-----------------------------------------------------------------------
1170 //-----------------------------------------------------------------------
1181 int isStoredObject( bool & rbRetVal, BasePersistent * pObject );
1182 //-----------------------------------------------------------------------
1183
1184 //============== AllSet-Methoden
1185 //-----------------------------------------------------------------------
1196 int openAllSet( BaseAllSet * pAllSet );
1197 //-----------------------------------------------------------------------
1208 int closeAllSet( BaseAllSet * pAllSet );
1209 //-----------------------------------------------------------------------
1220 int objIDInAllSet( const ObjID & rObjID,
1221 const BaseAllSet & rAllSet );
1222 //-----------------------------------------------------------------------
1233 int setCurrentObjectInAllSet( const ObjID & rObjID,
1234 const BaseAllSet & rAllSet);
1235 //-----------------------------------------------------------------------
1246 int setPositionInAllSet( std::size_t nPosition,
1247 const BaseAllSet & rAllSet );
1248 //-----------------------------------------------------------------------
1260 const BaseAllSet & rAllSet,
1261 EnSeekMode eMode );
1262 //-----------------------------------------------------------------------
1274 BasePersistent *& prObject,
1275 const BaseAllSet & rAllSet,
1276 EnSeekMode eMode,
1277 bool bGeneric = false );
1278 //-----------------------------------------------------------------------
1289 int setIndexFilter( const BaseAllSet & rAllSet,
1290 const std::string & rsIndexFilter );
1291 //-----------------------------------------------------------------------
1302 int setIndexFilter( const BaseAllSet & rAllSet,
1303 const std::string & rsIndexFilter,
1304 EnComparisionOp eComparisionOp );
1305 //-----------------------------------------------------------------------
1316 int setIndexFilter( const BaseAllSet & rAllSet,
1317 const std::string & rsRangeStartIndexFilter,
1318 const std::string & rsRangeEndIndexFilter );
1319 //-----------------------------------------------------------------------
1330 int removeIndexFilter( const BaseAllSet & rAllSet );
1331 //-----------------------------------------------------------------------
1342 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1343 const BaseAllSet & rAllSet,
1344 const std::string & rsIndexSearchValue,
1345 EnQueryType eQuerryType );
1346 //-----------------------------------------------------------------------
1357 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1358 const BaseAllSet & rAllSet,
1359 const std::string & rsIndexName,
1360 unsigned long ulIndexClassID,
1361 const std::string & rsIndexSearchValue,
1362 EnQueryType eQuerryType );
1363 //-----------------------------------------------------------------------
1374 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1375 const BaseAllSet & rAllSet,
1376 const std::string & rsIndexSearchValue,
1377 EnComparisionOp eComparisionOp );
1378 //-----------------------------------------------------------------------
1389 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1390 const BaseAllSet & rAllSet,
1391 const std::string & rsIndexName,
1392 unsigned long ulIndexClassID,
1393 const std::string & rsIndexSearchValue,
1394 EnComparisionOp eComparisionOp );
1395 //-----------------------------------------------------------------------
1406 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1407 const BaseAllSet & rAllSet,
1408 const std::string & rsRangeStartIndexSearchValue,
1409 const std::string & rsRangeEndIndexSearchValue );
1410 //-----------------------------------------------------------------------
1421 int getIndexedObjIdsFromAllSet( std::list< ObjID > & rObjIDList,
1422 const BaseAllSet & rAllSet,
1423 const std::string & rsIndexName,
1424 unsigned long ulIndexClassID,
1425 const std::string & rsRangeStartIndexSearchValue,
1426 const std::string & rsRangeEndIndexSearchValue );
1427 //-----------------------------------------------------------------------
1451 int processIndexQueryOrFilter( const IndexQueryBaseStruct & rIndexQueryBaseStruct,
1452 std::list< ObjID > * pRetValObjIDList );
1453 //-----------------------------------------------------------------------
1464 int getSizeFromAllSet( std::size_t & rnSize,
1465 const BaseAllSet & rAllSet );
1466 //-----------------------------------------------------------------------
1467
1468 //============== Auftrags-Hilfs-Methoden
1469 //-----------------------------------------------------------------------
1524 std::map< unsigned long, ClassInfo *, std::less<unsigned long> > *& prClassInfoMap,
1525 unsigned long ulClassID,
1526 const std::string & rstrBaseName );
1527 //-----------------------------------------------------------------------
1553 //-----------------------------------------------------------------------
1564 bool isInTransaction() const;
1565 //-----------------------------------------------------------------------
1577 //-----------------------------------------------------------------------
1606 BasePersistent * pObject,
1607 EnDeepMode eDeepMode );
1608 //-----------------------------------------------------------------------
1631 int notifyAsWritten( const std::list< ObjID > & rObjIDList );
1632 //-----------------------------------------------------------------------
1687 const ObjID & rObjId,
1688 EnLockMode eLockMode,
1689 EnDeepMode eDeepMode );
1690 //-----------------------------------------------------------------------
1740 const BaseLot & rObjIdLot,
1741 EnLockMode eLockMode,
1742 EnDeepMode eDeepMode );
1743 //-----------------------------------------------------------------------
1791 std::list<ObjID> * pObjIDList,
1792 LockSpecification * pLockSpec );
1793 //-----------------------------------------------------------------------
1849 int switchWatchClass( OrderMsg::EnOrderType eSetWatchOrUnsetWatch,
1850 unsigned long ulClassID,
1851 TdWatchNotifyMode ulWatchMode,
1852 CallBack * pCallBack );
1853 //-----------------------------------------------------------------------
1909 int switchWatchObject( OrderMsg::EnOrderType eSetWatchOrUnsetWatch,
1910 const ObjID & rObjId,
1911 TdWatchNotifyMode ulWatchMode,
1912 EnDeepMode eDeepMode,
1913 CallBack * pCallBack );
1914 //-----------------------------------------------------------------------
1970 int switchWatchLot( OrderMsg::EnOrderType eSetWatchOrUnsetWatch,
1971 const BaseLot & rObjIdLot,
1972 TdWatchNotifyMode ulWatchMode,
1973 EnDeepMode eDeepMode,
1974 CallBack * pCallBack );
1975 //-----------------------------------------------------------------------
2014 std::list<ObjID> * pObjIDList,
2015 WatchSpecification * pWatchSpec );
2016 //-----------------------------------------------------------------------
2071 int switchWatchClient( OrderMsg::EnOrderType eSetWatchOrUnsetWatch,
2072 TdWatchNotifyMode ulWatchMode,
2073 CallBack * pCallBack ) const;
2074 //-----------------------------------------------------------------------
2120 int switchWatchIndex( OrderMsg::EnOrderType eSetWatchOrUnsetWatch,
2121 TdWatchNotifyMode ulWatchMode,
2122 CallBack * pCallBack ) const;
2123 //-----------------------------------------------------------------------
2134 int setWatchServer( CallBack * pCallBack ) const;
2135 //-----------------------------------------------------------------------
2136
2137 //============== Objekt-Datensatz-Hilfs-Methoden
2138 //-----------------------------------------------------------------------
2177 Record * pRecord,
2178 bool bGeneric = false);
2179 //-----------------------------------------------------------------------
2209 Record * pRecord );
2210 //-----------------------------------------------------------------------
2211 // doxygen -> warning: unable to resolve reference to 'GLO_REF_DEPENDENT' for \ref command
2212 // Is a reference to the GlobalObjects documentation.
2213 //-----------------------------------------------------------------------
2257 int getDependDataRecords( std::map< ObjID, Record *, std::less<ObjID> > & rRetValList,
2258 Record & rObjDataRecord,
2259 EnDeepMode eDeepMode,
2260 bool bWithRefRecords ) const;
2261 //-----------------------------------------------------------------------
2301 int insertDataRecord( std::map< ObjID, Record *, std::less<ObjID> > & rRetValList,
2302 IDRecordAttribute * pIDRecordAttribute,
2303 EnDeepMode eDeepMode,
2304 bool bWithRefRecords ) const;
2305 //-----------------------------------------------------------------------
2331 int insertDataRecord( std::map< ObjID, Record *, std::less<ObjID> > & rRetValList,
2332 ObjIDRecordTuple * pObjIDRecordTuple,
2333 EnDeepMode eDeepMode ) const;
2334 //-----------------------------------------------------------------------
2357 int insertDataRecord( std::map< ObjID, Record *, std::less<ObjID> > & rRetValList,
2358 ObjID ObjID,
2359 EnDeepMode eDeepMode ) const;
2360 //-----------------------------------------------------------------------
2413 int insertDataRecord( std::map< ObjID, Record *, std::less<ObjID> > & rRetValList,
2414 IDRecordAttribute * pIDRecordAttribute,
2415 ObjIDRecordTuple * pObjIDRecordTuple,
2416 ObjID & rObjID,
2417 EnDeepMode eDeepMode,
2418 bool bWithRefRecords ) const;
2419 //-----------------------------------------------------------------------
2435 void movePtrClassInfoMapToSmrtPtrClassInfoMap( const std::map< unsigned long, ClassInfo *, std::less<unsigned long> > * pPtrClassInfoMap,
2436 std::map< unsigned long, std::shared_ptr<ClassInfo>, std::less<unsigned long> > & rSmrtPtrClassInfoMap ) const;
2437 //-----------------------------------------------------------------------
2438
2439 private:
2440 //============== Operatoren
2441 //-----------------------------------------------------------------------
2451 PrivateBase & operator= (const PrivateBase &);
2452 //-----------------------------------------------------------------------
2453 };
2454 //---------------------------------------------------------------------------
2455} // namespace glo
2456//-----------------------------------------------------------------------------
2457#ifdef _MSC_VER
2458 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
2459 #pragma warning( default : 4251 )
2460#endif
2461//-----------------------------------------------------------------------------
2462#endif
#define NULL_PTR
Definition EuDef_NULL_PTR.h:74
Header für ClassInfoAttribute und ClassInfoAttribute::Type
Header für ClientInfo
Header für OrderMsg
Header und Source für TOndemand
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:63
Ist die Basisklasse von Template-AllSets und dem generischen AllSet.
Definition GloBaseAllSet.h:80
Diese Klasse ist die Schnittstelle zu den persistenten Objekten. Hier können "Objekte" angemeldet,...
Definition GloBase.h:250
Ist die Basisklasse von Pointer- und Ondemand-Sets bzw. Pointer- und Ondemand-Listen.
Definition GloBaseLot.h:66
Abstrakte Basisklasse für Persistent und die generische GenericPersistent.
Definition GloBasePersistent.h:102
Oberklasse für die Klassen, welche mit einer Base 'verbunden' sind.
Definition GloCallBack.h:74
Zusammengefasste Typinformationen für ein ClassInfoAttribute.
Definition GloClassInfoAttribute.h:101
Diese Klasse beinhaltet alle Informationen um Objekte einer Klasse in einer Datenbank speichern zu kö...
Definition GloClassInfo.h:79
OberKlasse von LocalThread, ClientThread und ServerThread, weil diese als Sender und Empfänger (Kommu...
Definition GloCommunicator.h:86
Klasse für die eingebettete persistente Objekt-Attribute eines Record. Repräsentiert ein Attribut vom...
Definition GloEmbeddedRecordAttribute.h:65
Klasse um die generischen persistente Objekte einer Datenbank im Speicher im Zugriff zu haben.
Definition GloGenPersObjectSpy.h:76
OberKlasse für ObjID- und ObjID-Referenz-Attribute eines Record.
Definition GloIDRecordAttribute.h:58
Definition GloIndexQueryBaseStruct.h:65
In Objekten dieser Klasse werden die Min- und Max-Werte von unterstützten Datentypen und deren Feldlä...
Definition GloLimitRecord.h:64
Um Objekte sperren zu können, werden der 'Lock-Modus' und die 'Sperrtiefe' als Parameter benötigt....
Definition GloLockSpecification.h:58
Abstrakte Oberklasse für Instanziierungsfunktionen der persistenten Klassen. Von dieser Klasse wird g...
Definition GloObjCreator.h:71
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:77
Ein Tuple von Datensatz und Objekt-ID.
Definition GloObjIDRecordTuple.h:73
Diese Klasse kann aus einem Datensatz ein persistentes Objekt instanziieren bzw. ein persistentes Obj...
Definition GloObjectMaker.h:63
EnOrderType
Definition GloOrderMsg.h:98
Klasse um die persistente Objekte einer Datenbank im Speicher im Zugriff zu haben.
Definition GloPersObjectSpy.h:75
In dieser Klasse werden Funktionen für Base gekapselt. Für den Fall, dass sich Änderungen in der Funk...
Definition GloPrivateBase.h:92
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
GenPersObjectSpy * m_pPersGenericObjectSpy
Definition GloPrivateBase.h:316
int switchWatchObject(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, const ObjID &rObjId, TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack)
PrivateBase(const std::string &rstrServerName, const std::string &rstrClientName, int iTimeOutSec, unsigned int uiPort, const std::string &rstrSchemaPath, const std::string &rstrKnownSchemes)
int getAllSuperClassInfos(std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prSuperClassInfoMap, unsigned long ulClassID, const std::string &rstrBaseName)
int getBaseCount(std::vector< std::string >::size_type &rBaseCount) const
int lockUnlockObjIdList(OrderMsg::EnOrderType eLockOrUnlock, std::list< ObjID > *pObjIDList, LockSpecification *pLockSpec)
int beginCommitAbortTransaction(OrderMsg::EnOrderType eBeginOrCommitOrAbort)
int switchWatchObjIdList(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, std::list< ObjID > *pObjIDList, WatchSpecification *pWatchSpec)
int insertDataRecord(std::map< ObjID, Record *, std::less< ObjID > > &rRetValList, IDRecordAttribute *pIDRecordAttribute, ObjIDRecordTuple *pObjIDRecordTuple, ObjID &rObjID, EnDeepMode eDeepMode, bool bWithRefRecords) const
int reindexBase(const std::string &rstrBaseName, CallBack *pProgressNotificationCallBack)
bool isInTransaction() const
int processIndexQueryOrFilter(const IndexQueryBaseStruct &rIndexQueryBaseStruct, std::list< ObjID > *pRetValObjIDList)
int setCurrentObjectInAllSet(const ObjID &rObjID, const BaseAllSet &rAllSet)
ObjectMaker * getObjectMaker()
int isSuperClassFrom(bool &rbRetVal, unsigned long ulClassIDSuperClass, unsigned long ulClassIDSubClass, const std::string &rstrBaseName) const
std::string getBaseName() const
int getSchemaPath(std::string &rstrRetVal)
int reindexBase(CallBack *pProgressNotificationCallBack)
int setDbIniName(const std::string &rstrDbIniName)
int getAllLoggedClients(std::vector< ClientInfo > &rClientInfoVector, const std::string &rstrBaseName) const
ObjectMaker * m_pObjectMaker
Definition GloPrivateBase.h:286
int insertDataRecord(std::map< ObjID, Record *, std::less< ObjID > > &rRetValList, ObjID ObjID, EnDeepMode eDeepMode) const
int setBaseName(const std::string &rstrBaseName)
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp)
int m_iTimeOutSec
Definition GloPrivateBase.h:247
int isKnownClassID(bool &rbRetVal, unsigned long ulClassID, const std::string &rstrBaseName) const
int getSubClassInfos(std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prSubClassInfoMap, unsigned long ulClassID, const std::string &rstrBaseName)
bool m_bOpen
Definition GloPrivateBase.h:173
std::string m_strDbIniFileName
Definition GloPrivateBase.h:132
int setIndexFilter(const BaseAllSet &rAllSet, const std::string &rsIndexFilter)
int openBaseComfortably(CallBack *pProgressNotificationCallBack, CallBack *pServerCrashNotificationCallBack)
int instantiateRecordObjects(BasePersistent &rObject, Record *pRecord)
std::string getDbIniName() const
int getAllBases(std::vector< std::string > *&prRetValVector) const
int getSizeFromAllSet(std::size_t &rnSize, const BaseAllSet &rAllSet)
PersObjectSpy * m_pPersObjectSpy
Definition GloPrivateBase.h:301
int switchWatchClient(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, TdWatchNotifyMode ulWatchMode, CallBack *pCallBack) const
virtual ~PrivateBase()
int repairBase(const std::string &rstrBaseName, CallBack *pProgressNotificationCallBack)
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp)
ObjCreator * m_pObjCreator
Definition GloPrivateBase.h:273
int close(CallBack *pProgressNotificationCallBack)
int repairBase(CallBack *pProgressNotificationCallBack)
int getLimits(LimitRecord *&prLimitRecord, const ClassInfoAttribute::Type &rClassInfoAttributeType) const
int open(const std::string &rstrBaseName, CallBack *pProgressNotificationCallBack)
int getClassInfos(OrderMsg::EnOrderType eOrder, std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prClassInfoMap, unsigned long ulClassID, const std::string &rstrBaseName)
int setWatchServer(CallBack *pCallBack) const
int getDefaultLimits(std::vector< LimitRecord > *&prRetValVector) const
std::string m_strClientName
Definition GloPrivateBase.h:331
int getDependDataRecords(std::map< ObjID, Record *, std::less< ObjID > > &rRetValList, Record &rObjDataRecord, EnDeepMode eDeepMode, bool bWithRefRecords) const
int openBase(CallBack *pProgressNotificationCallBack, CallBack *pServerCrashNotificationCallBack)
int notifyAsWritten(const std::list< ObjID > &rObjIDList)
int connect(CallBack *pServerCrashNotificationCallBack=NULL_PTR)
int getAllSubClassInfos(std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prSubClassInfoMap, unsigned long ulClassID, const std::string &rstrBaseName)
int getClassInfo(ClassInfo *&prClassInfo, unsigned long ulClassID, const std::string &rstrBaseName) const
int compressBase(CallBack *pProgressNotificationCallBack)
int isStoredObject(bool &rbRetVal, BasePersistent *pObject)
PrivateBase(const std::string &rstrClientName, ObjCreator &rObjCreator)
PrivateBase(const PrivateBase &)
int storeDeleteObject(OrderMsg::EnOrderType eStoreOrDelete, BasePersistent *pObject, EnDeepMode eDeepMode)
int getTimeOutSec(int &riTimeOutSec)
unsigned int m_uiPort
Definition GloPrivateBase.h:200
int setSchemaPath(const std::string &rstrSchemaPath)
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsIndexSearchValue, EnQueryType eQuerryType)
Base * m_pBaseApi
Definition GloPrivateBase.h:113
int getTransactionLevel() const
bool isOpen() const
int getPort(unsigned int &ruiPort)
int insertDataRecord(std::map< ObjID, Record *, std::less< ObjID > > &rRetValList, ObjIDRecordTuple *pObjIDRecordTuple, EnDeepMode eDeepMode) const
int openAllSet(BaseAllSet *pAllSet)
int lockUnlockObject(OrderMsg::EnOrderType eLockOrUnlock, const ObjID &rObjId, EnLockMode eLockMode, EnDeepMode eDeepMode)
int getRecord(Record *&prRecord, const ObjID &rObjID, unsigned long ulClassID)
Communicator * m_pLocalCommunicator
Definition GloPrivateBase.h:260
int setClientName(const std::string &rstrClientName)
int doWithBase(const std::string &rstrBaseName, CallBack *pCallBack, OrderMsg::EnOrderType eRepairType)
unsigned int getCommunicatorID() const
int refreshObject(BasePersistent *pObject)
int lockUnlockLot(OrderMsg::EnOrderType eLockOrUnlock, const BaseLot &rObjIdLot, EnLockMode eLockMode, EnDeepMode eDeepMode)
PrivateBase(const std::string &rstrClientName)
int removeIndexFilter(const BaseAllSet &rAllSet)
int objIDInAllSet(const ObjID &rObjID, const BaseAllSet &rAllSet)
int getObjIdFromAllSet(ObjID &rObjID, const BaseAllSet &rAllSet, EnSeekMode eMode)
bool isConnected() const
std::string m_sKnownSchemes
Definition GloPrivateBase.h:234
int getAnObject(BasePersistent *&prObject, const ObjID &rObjID, bool bGeneric=false)
int switchWatchClass(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, unsigned long ulClassID, TdWatchNotifyMode ulWatchMode, CallBack *pCallBack)
int setIndexFilter(const BaseAllSet &rAllSet, const std::string &rsRangeStartIndexFilter, const std::string &rsRangeEndIndexFilter)
int setPositionInAllSet(std::size_t nPosition, const BaseAllSet &rAllSet)
int setKnownSchemes(const std::string &rstrKnownSchemes)
std::string m_sSchemaPath
Definition GloPrivateBase.h:217
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
int generateObject(BasePersistent *&prObject, Record *pRecord, bool bGeneric=false)
int getIndexedObjIdsFromAllSet(std::list< ObjID > &rObjIDList, const BaseAllSet &rAllSet, const std::string &rsIndexName, unsigned long ulIndexClassID, const std::string &rsRangeStartIndexSearchValue, const std::string &rsRangeEndIndexSearchValue)
int getAllClassInfosFromBase(std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prAllClassInfoMap, const std::string &rstrBaseName)
int m_iTransactionLevel
Definition GloPrivateBase.h:185
int switchWatchLot(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, const BaseLot &rObjIdLot, TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack)
std::string getClientName() const
int getClassInfo(ClassInfo *&prClassInfo, const std::string &rstrClassName, const std::string &rstrBaseName) const
std::string m_sBaseName
Definition GloPrivateBase.h:161
int reconnect(CallBack *pServerCrashNotificationCallBack=NULL_PTR)
PrivateBase(const std::string &rstrServerName, const std::string &rstrClientName, ObjCreator &rObjCreator)
int closeBase(CallBack *pProgressNotificationCallBack)
int getObjectFromAllSet(ObjID &rObjID, BasePersistent *&prObject, const BaseAllSet &rAllSet, EnSeekMode eMode, bool bGeneric=false)
int getSchemaNameWithPath(std::string &rstrRetVal)
void movePtrClassInfoMapToSmrtPtrClassInfoMap(const std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *pPtrClassInfoMap, std::map< unsigned long, std::shared_ptr< ClassInfo >, std::less< unsigned long > > &rSmrtPtrClassInfoMap) const
int assignObject(BasePersistent *pObject)
std::string m_sServerName
Definition GloPrivateBase.h:149
int switchWatchIndex(OrderMsg::EnOrderType eSetWatchOrUnsetWatch, TdWatchNotifyMode ulWatchMode, CallBack *pCallBack) const
int compressBase(const std::string &rstrBaseName, CallBack *pProgressNotificationCallBack)
PrivateBase(const std::string &rstrServerName, const std::string &rstrClientName)
int insertDataRecord(std::map< ObjID, Record *, std::less< ObjID > > &rRetValList, IDRecordAttribute *pIDRecordAttribute, EnDeepMode eDeepMode, bool bWithRefRecords) const
int getSuperClassInfos(std::map< unsigned long, ClassInfo *, std::less< unsigned long > > *&prSuperClassInfoMap, unsigned long ulClassID, const std::string &rstrBaseName)
PrivateBase(const std::string &rstrClientName, const std::string &rstrSchemaPath, const std::string &rstrBaseName)
std::string getServerName() const
int getKnownSchemes(std::vector< std::string > &rRetVal)
int closeAllSet(BaseAllSet *pAllSet)
int setIndexFilter(const BaseAllSet &rAllSet, const std::string &rsIndexFilter, EnComparisionOp eComparisionOp)
Objekte dieser Klasse transportieren die Daten von den Tabellen ins persistente Objekt und von diesen...
Definition GloRecord.h:101
Um Objekte beobachten zu können, müssen der 'Beobachtungsmodus', die 'Beobachtungstiefe' und das 'Ben...
Definition GloWatchSpecification.h:60
Definition GloAbstractBaseLot.h:42
EnDeepMode
Definition GloTypes.h:247
EnComparisionOp
Definition GloTypes.h:1583
EnLockMode
Definition GloTypes.h:1070
EnSeekMode
Definition GloTypes.h:166
EnQueryType
Definition GloTypes.h:1179
unsigned long TdWatchNotifyMode
Definition GloTypes.h:543