BankAndCustomer
|
Header and source for TOndemand More...
#include "GloTypes.h"
#include "GloReference.h"
#include "GloBase.h"
#include "GloObjID.h"
#include "GloBasePersistent.h"
#include "EuException.h"
#include "memory"
Go to the source code of this file.
Classes | |
class | glo::IsBaseClassOf< Base, Derived > |
Checks whether template parameters are classes and whether the class of the second template parameter is of the type of the class of the first template parameter or is derived from it. More... | |
struct | glo::IsBaseClassOf< Base, Derived >::No |
struct | glo::IsBaseClassOf< Base, Derived >::IsClass< T > |
class | glo::TOndemand< T > |
Namespaces | |
namespace | glo |
Macros | |
#define | SUPER Reference |
A reference (as attribute) of a persistent object to another persistent object in the database. | |
Header and source for TOndemand
Terms of License The source code in this file is licensed.
SPDX-License-Identifier: LicenseRef-Helmut-Jakoby-Commercial-License OR LicenseRef-Helmut-Jakoby-Adapted-Prosperity-Public-License
Helmut-Jakoby-Commercial-License
For OEMs (Original Equipment Manufacturers), ISVs (Independent Software Vendors), VARs (Value Added Resellers) and other distributors who combine commercially licensed software with Software © by Helmut Jakoby and distribute it as such or in conjunction with another product and do not wish to publish the source code of the commercially licensed software under any other license that may be offered, a commercial license is available for this purpose. Please review the following information to ensure the Commercial-License requirements will be met: https://globalobjects.de/hjacomlicense_en.html .
Helmut-Jakoby-Adapted-Prosperity-Public-License
For developers of free, non-commercial software applications who want to combine and distribute their application with Software © by Helmut Jakoby, this license is a good option. Please review the following information to ensure the Adapted-Prosperity-Public-License requirements will be met: https://globalobjects.de/hjappllicense_en.html .
#define SUPER Reference |
A reference (as attribute) of a persistent object to another persistent object in the database.
In contrast to a pointer to a persistent object (where the referenced object is loaded with the referencing object), TOndemand is a reference to a persistent object via the object ID; it is not loaded with the referencing object from the database, but can be 'reloaded' if needed.
It makes sense to use TOndemand whenever an object references a 'large' object that is not necessarily available in memory.
E.g. in an image management system an image object could contain textual information, a thumpnail and a 'large' image. For some views it may not be useful to get the 'large' image from the database for every display due to speed reasons. In this case a reference via a TOndemand would be useful.
If objects in one object database should reference objects in another object database, this is only possible with glo::TOndemand.