Qore CdsRestDataProvider Module Reference  1.0.0
CdsRestRecordIterator.qc.dox.h
1 // -*- mode: c++; indent-tabs-mode: nil -*-
3 
25 namespace CdsRestDataProvider {
28 class CdsRestRecordIterator : public AbstractDataProviderRecordIterator {
29 
30 public:
31 
32 private:
34  CdsRestClient::CdsRestClient rest;
35 
37  string name;
38 
40  hash<CdsRestRecordInfo> record_info;
41 
44 
45 public:
46 
48 
54  constructor(CdsRestClient::CdsRestClient rest, string name, hash<CdsRestRecordInfo> record_info, *hash<auto> where_cond, *hash<auto> search_options);
55 
56 
58 
61  bool valid();
62 
63 
65 
71  bool next();
72 
73 
75 
77  hash<auto> getValue();
78 
79 
81 
87  auto memberGate(string key);
88 
89 
91  string getOrClause(list<auto> arglist);
92 
93 
95  *string makeQuery(*hash<auto> where_cond, *hash<auto> search_options);
96 
97 
99 
101  *hash<string, DataProvider::AbstractDataField> getRecordType();
102 
103 
104  string getArgValue(string key, auto value);
105 
106 
107 protected:
108  string getOrderBy(softlist<string> coll);
109 public:
110 
111 
112 protected:
113  bool checkColumnName(string col);
114 public:
115 
116 
117 protected:
118  string getColumnNames(*softlist<auto> column_names);
119 public:
120 
121 
122 protected:
123  string doWhereExpression(hash<auto> where_cond, *hash<auto> search_options);
124 public:
125 
126 
127 protected:
128  string doWhereExpressionIntern(string key, auto value);
129 public:
130 
131 };
132 };
hash< CdsRestRecordInfo > record_info
Record info for the entity.
Definition: CdsRestRecordIterator.qc.dox.h:40
CdsRestClient::CdsRestClient rest
The REST client object for API calls.
Definition: CdsRestRecordIterator.qc.dox.h:34
*hash< string, DataProvider::AbstractDataField > getRecordType()
Returns the record description, if available.
Qore::ListHashIterator i
record iterator
Definition: CdsRestRecordIterator.qc.dox.h:43
string key
Key field, if any.
Definition: CdsEntityDataProvider.qc.dox.h:39
Qore CdsRestDataProvider module definition.
Definition: CdsEntityDataProvider.qc.dox.h:26
string getOrClause(list< auto > arglist)
Returns "or" clauses.
*string makeQuery(*hash< auto > where_cond, *hash< auto > search_options)
Returns the filter for a request.
hash< auto > getValue()
Returns a single record if the iterator is valid.
bool valid()
Returns True if the iterator is valid.
bool next()
Increments the row pointer when retrieving rows from a select statement; returns True if there is a r...
Defines the record iterator class for Table-based iterators.
Definition: CdsRestRecordIterator.qc.dox.h:28
string name
current object name
Definition: CdsRestRecordIterator.qc.dox.h:37
constructor(CdsRestClient::CdsRestClient rest, string name, hash< CdsRestRecordInfo > record_info, *hash< auto > where_cond, *hash< auto > search_options)
creates the iterator
auto memberGate(string key)
Returns the value of the given field in the current row, if the iterator is valid.