Qore SqlUtil Module Reference  1.7.4
AbstractSqlUtilBase.qc.dox.h
1 // -*- mode: c++; indent-tabs-mode: nil -*-
3 
26 namespace SqlUtil {
28 class AbstractSqlUtilBase : public Serializable {
29 
30 public:
31 protected:
33  string dsdesc;
35  *hash<auto> opts;
37  transient AbstractDatasource ds;
39  transient Mutex l();
40 
41 public:
42 
43  // assigs the object's members after deserialization
44 private:
45  deserializeMembers(hash<auto> members);
46 public:
47 
48 
49  // serializes the object's data to a hash
50 private:
51  hash<auto> serializeMembers(hash<auto> members);
52 public:
53 
54 
56 
61 protected:
62  constructor(AbstractDatasource nds, *hash nopts);
63 public:
64 
65 
66  static string makeDatasourceDesc(AbstractDatasource ds);
67 
68 protected:
69  validateOptionsIntern(string err, hash ropt, reference<hash> opt, string tag);
70 public:
71 
72 
73 protected:
74  static validateOptionIntern(string err, string type, reference opt, string k, string tag);
75 public:
76 
77 
79 protected:
81 public:
82 
83 
86 
87 
89  string getDriverName();
90 
91 
94 
95 };
96 };
base class for abstract SqlUtil classes
Definition: AbstractSqlUtilBase.qc.dox.h:28
string getDatasourceDesc()
returns a descriptive string for the datasource
Qore::SQL::AbstractDatasource getDatasource()
gets the underlying AbstractDatasource
constructor(AbstractDatasource nds, *hash nopts)
creates the object; private constructor
transient Mutex l()
mutex for atomic actions
transient AbstractDatasource ds
the connection to the database server
Definition: AbstractSqlUtilBase.qc.dox.h:37
*hash< auto > opts
option hash
Definition: AbstractSqlUtilBase.qc.dox.h:35
string dsdesc
datasource description
Definition: AbstractSqlUtilBase.qc.dox.h:33
string getDriverName()
returns the database driver name
validateHashKeysForWhitespaces(auto node)
Check input node for all hash keys - if it contains a key with whitespace in the beginning or at the ...
hash< auto > hash(object obj)
string type(auto arg)
Qore AbstractDatabase class definition.
Definition: AbstractDatabase.qc.dox.h:26