Qore DataProvider Module Reference 3.0
|
the DataProviderTypeEntry class More...
#include <DataProviderTypeEntry.qc.dox.h>
Public Member Methods | |
addChild (string child) | |
Adds a child node to the entry. | |
bool | clear () |
Clears the type hierarchy of all non-locked types. | |
constructor () | |
Creates the entry as a root node. | |
constructor (string path, string name) | |
Creates the entry as a child node. | |
*DataProviderTypeEntry | getChild (string child) |
Returns the given child, if any. | |
*DataProviderTypeEntry | getChildEx (string child) |
Returns the given child, if any, otherwise throws an exception. | |
*list< string > | getChildNames () |
Returns a list of child entry names, if any. | |
DataProviderTypeEntry | getCreateChild (string child) |
Returns the given child and creates it if necessary. | |
string | getDesc () |
Returns the description of the entry. | |
string | getDisplayName () |
Returns the display name of the entry. | |
*int | getEpheremalTypeId () |
Returns the epheremal type ID. | |
hash< DataProviderTypeEntryInfo > | getInfo (*bool rec_children_only) |
Returns information about this entry. | |
string | getName () |
Returns the name of the entry. | |
string | getPath () |
Returns the path of the entry. | |
string | getShortDescription () |
Returns the short description of the entry. | |
*AbstractDataProviderType | getType () |
Returns the type at the entry level, if any. | |
*AbstractDataProviderType | getTypeEx () |
Returns the type at the entry level, if any, otherwise throws an exception. | |
bool | hasType () |
Returns True if the entry has a type. | |
bool | isLocked () |
Returns the locked status. | |
bool | isParent () |
Returns True if the entry is a "parent" entry, meaning that all children were added with this entry. | |
*list< string > | listParentTypes () |
Returns a list of registered data provider type paths where each type listed is a "parent" type. | |
*list< string > | listTypes () |
Returns a list of registered data provider type paths. | |
bool | lock () |
Locks the entry, so it can't be removed or changed. | |
lockAll () | |
Locks all types. | |
removeChild (string child) | |
Removes the given child, if it exists. | |
*AbstractDataProviderType | setOrReplaceType (AbstractDataProviderType type, *int id) |
Sets or replaces the type for the entry. | |
bool | setType (AbstractDataProviderType type, bool locked=False) |
Sets the type for the entry. | |
Static Public Member Methods | |
static | setEpheremalIdStart (int n) |
Sets the start of the sequence for epheremal IDs. | |
Static Private Member Methods | |
static Sequence | seq (1) |
Sequence for epheremal IDs for types. | |
Private Attributes | |
*hash< string, DataProviderTypeEntry > | children |
Children of this entry. | |
*int | epheremal_type_id |
Epheremal ID for the type. | |
bool | locked = False |
True if the entry is locked and therefore cannot be deleted or updated | |
string | name |
The name of this entry. | |
bool | parent = False |
True if this entry is a "parent" type; if the children were added atomically with this entry | |
string | path |
The path to this entry. | |
*hash< string, DataProviderTypeEntry > | rec_children |
Names of attributes that can be referenced as children that have their own fields. | |
*AbstractDataProviderType | type |
The type at this location. | |
*hash< string, DataProviderTypeEntry > | type_children |
Names of attributes that can be referenced as children. | |
Static Private Attributes | |
static bool | neg |
If epheremal IDs should be negative. | |
Private:Internal Member Methods | |
constructor (string path, string name, AbstractDataProviderType type) | |
Creates the entry as a child node. | |
setTypeChildren () | |
Sets up attributes as children. | |
the DataProviderTypeEntry class
DataProvider::DataProviderTypeEntry::addChild | ( | string | child | ) |
Adds a child node to the entry.
child | the name of the child node to add |
CHILD-ERROR | a child with the same name already exists |
*DataProviderTypeEntry DataProvider::DataProviderTypeEntry::getChild | ( | string | child | ) |
Returns the given child, if any.
*DataProviderTypeEntry DataProvider::DataProviderTypeEntry::getChildEx | ( | string | child | ) |
Returns the given child, if any, otherwise throws an exception.
INVALID-CHILD | the given child is unknown |
*list< string > DataProvider::DataProviderTypeEntry::getChildNames | ( | ) |
Returns a list of child entry names, if any.
DataProviderTypeEntry DataProvider::DataProviderTypeEntry::getCreateChild | ( | string | child | ) |
Returns the given child and creates it if necessary.
*int DataProvider::DataProviderTypeEntry::getEpheremalTypeId | ( | ) |
Returns the epheremal type ID.
hash< DataProviderTypeEntryInfo > DataProvider::DataProviderTypeEntry::getInfo | ( | *bool | rec_children_only | ) |
Returns information about this entry.
rec_children_only | if True, then only children with fields are returned |
*AbstractDataProviderType DataProvider::DataProviderTypeEntry::getType | ( | ) |
Returns the type at the entry level, if any.
*AbstractDataProviderType DataProvider::DataProviderTypeEntry::getTypeEx | ( | ) |
Returns the type at the entry level, if any, otherwise throws an exception.
NO-TYPE | this entry has no type, only children |
bool DataProvider::DataProviderTypeEntry::isLocked | ( | ) |
Returns the locked status.
*list< string > DataProvider::DataProviderTypeEntry::listParentTypes | ( | ) |
Returns a list of registered data provider type paths where each type listed is a "parent" type.
"Parent" types are types where children are added with the parent
*list< string > DataProvider::DataProviderTypeEntry::listTypes | ( | ) |
Returns a list of registered data provider type paths.
bool DataProvider::DataProviderTypeEntry::lock | ( | ) |
Locks the entry, so it can't be removed or changed.
TYPE-LOCK-ERROR | the entry cannot be locked, because it does not have a type |
DataProvider::DataProviderTypeEntry::removeChild | ( | string | child | ) |
Removes the given child, if it exists.
TYPE-LOCK-ERROR | the given child cannot be removed because it is locked |
|
static |
Sets the start of the sequence for epheremal IDs.
n | the new sequence start number, if the number is negative, negative IDs will be assigned |
TYPE-ID-ERROR | Cannot set the ID start after IDs have already been assigned |
*AbstractDataProviderType DataProvider::DataProviderTypeEntry::setOrReplaceType | ( | AbstractDataProviderType | type, |
*int | id | ||
) |
Sets or replaces the type for the entry.
type | the type to set for this entry |
id | optional epheremal type ID |
TYPE-LOCK-ERROR | type entry cannot be replaced, because it is locked |
bool DataProvider::DataProviderTypeEntry::setType | ( | AbstractDataProviderType | type, |
bool | locked = False |
||
) |
Sets the type for the entry.
type | the type to set for this entry |
locked | if the data type should be locked, prohibiting updates and deletions |
TYPE-ERROR | a type has already been set for this entry |
|
private |
True if the entry is locked and therefore cannot be deleted or updated