Qore DataProvider Module Reference 2.7.5
Loading...
Searching...
No Matches
DataProviderTypeCache.qc.dox.h
1// -*- mode: c++; indent-tabs-mode: nil -*-
3
27namespace DataProvider {
30
31public:
32protected:
35
37 transient RWLock rwlock();
38
40 int size = 0;
41
42public:
43
45
54 registerType(string path, AbstractDataProviderType type, bool locked = False);
55
56
58
69
70
72
79
80
82 int size();
83
84
86 bool empty();
87
88
91
92
95
96
98
102 *list<string> listTypes();
103
104
106
111 *list<string> listParentTypes();
112
113
116
117
119
127
128
130
140
141
143
151 *hash<DataProviderTypeEntryInfo> getTypeInfo(string path, *bool rec_children_only);
152
153
155
165 hash<DataProviderTypeEntryInfo> getTypeInfoEx(string path, *bool rec_children_only);
166
167
169
184 *AbstractDataProviderType getTypeImpl(string path, bool throw_exception, *code type_loader);
185
186
188
202 *hash<DataProviderTypeEntryInfo> getTypeInfoImpl(string path, bool throw_exception, *bool rec_children_only);
203
204
206 RWLock getLock();
207
208
210
225protected:
226 static *AbstractDataProviderType getTypeFromFields(string path, AbstractDataProviderType type, list<string> type_path, bool throw_exception);
227public:
228
229};
230};
describes a data type
Definition: AbstractDataProviderType.qc.dox.h:206
Data provider type cache class.
Definition: DataProviderTypeCache.qc.dox.h:29
DataProviderTypeEntry getRoot()
Returns the root type entry.
hash< DataProviderTypeEntryInfo > getTypeInfoEx(string path, *bool rec_children_only)
Returns the given data provider type or throws an exception if not present.
int size
The size of the cache.
Definition: DataProviderTypeCache.qc.dox.h:40
clear()
Clears the type hierarchy of all non-locked types.
*list< string > listTypes()
Returns a list of registered data provider type paths.
*list< string > listParentTypes()
Returns a list of registered data provider type paths where the types are "parent" types.
*AbstractDataProviderType getType(string path)
Returns the given data provider type or NOTHING if not present.
transient RWLock rwlock()
Data provider type cache lock.
bool empty()
Returns True if the cache is empty, False if not.
*hash< DataProviderTypeEntryInfo > getTypeInfo(string path, *bool rec_children_only)
Returns the given data provider type or NOTHING if not present.
RWLock getLock()
Returns the RWLock to allow for external serialization.
int size()
Returns the number of types in the cache.
DataProviderTypeEntry root()
Data provider data type cache.
registerType(string path, AbstractDataProviderType type, bool locked=False)
Register a new data provider type in the cache.
static *AbstractDataProviderType getTypeFromFields(string path, AbstractDataProviderType type, list< string > type_path, bool throw_exception)
Returns the given data provider type and either throws an exception if not present or returns NOTHING...
*AbstractDataProviderType removeType(string path)
Removes a type from the type cache.
*hash< DataProviderTypeEntryInfo > getTypeInfoImpl(string path, bool throw_exception, *bool rec_children_only)
Returns information for the given data provider type and either throws an exception if not present or...
AbstractDataProviderType getTypeEx(string path)
Returns the given data provider type or throws an exception if not present.
*AbstractDataProviderType getTypeImpl(string path, bool throw_exception, *code type_loader)
Returns the given data provider type and either throws an exception if not present or returns NOTHING...
bool registerOrReplaceType(string path, AbstractDataProviderType type)
Register or replaces a data provider type in the cache.
the DataProviderTypeEntry class
Definition: DataProviderTypeEntry.qc.dox.h:58
Qore AbstractDataField class definition.
Definition: AbstractDataField.qc.dox.h:27