Qore SwaggerDataProvider Module Reference  1.0.2
SwaggerRequestDataProvider.qc.dox.h
1 // -*- mode: c++; indent-tabs-mode: nil -*-
3 
25 // minimum required Qore version
26 // assume local scope for variables, do not use "$" signs
27 // require type definitions everywhere
28 // strict argument handling
29 // enable all warnings
30 
32 namespace SwaggerDataProvider {
35 
36 public:
38  SwaggerSchema schema;
39 
42 
44  string uri_path;
45 
48 
50  OperationObject op;
51 
54 
56  *hash<string, AbstractDataField> record_type;
57 
59  constructor(SwaggerSchema schema, *RestClient rest, string uri_path, OperationObject op);
60 
61 
63  string getName();
64 
65 
67  hash<DataProviderInfo> getInfo();
68 
69 
71 
73 protected:
74  *hash<string, AbstractDataField> getRecordTypeImpl(*hash<auto> search_options);
75 public:
76 
77 
78 protected:
79  *hash<string, AbstractDataField> getRecordTypeIntern();
80 public:
81 
82 
84 protected:
85  *AbstractDataProviderType getRequestTypeImpl();
86 public:
87 
88 
90 protected:
91  *AbstractDataProviderType getResponseTypeImpl();
92 public:
93 
94 
96 protected:
97  *hash<string, AbstractDataProviderType> getErrorResponseTypesImpl();
98 public:
99 
100 
102 
108 protected:
109  AbstractDataProviderType getErrorResponseTypeImpl(string error_code);
110 public:
111 
112 
114 protected:
115  AbstractDataProviderType getResponseTypeIntern(ResponseObject response, string label);
116 public:
117 
118 
120 protected:
121  *ResponseObject getSuccessResponse();
122 public:
123 
124 
126 
131 protected:
132  auto doRequestImpl(auto req, *hash<auto> request_options);
133 public:
134 
135 
137 
145 protected:
146  AbstractDataProviderRecordIterator requestSearchRecordsImpl(auto req, *hash<auto> where_cond, *hash<auto> search_options);
147 public:
148 
149 
151 protected:
152  hash<auto> doRequestIntern(auto req, *hash<auto> options);
153 public:
154 
155 
157  string getUriValue(auto v);
158 
159 
161 protected:
162  string getUriPath();
163 public:
164 
165 
167 protected:
169 public:
170 
171 
173 protected:
174  hash<DataProviderInfo> getStaticInfoImpl();
175 public:
176 
177 };
178 };
SwaggerDataProvider::SwaggerRequestDataProvider::getStaticInfoImpl
hash< DataProviderInfo > getStaticInfoImpl()
Returns data provider static info.
SwaggerDataProvider::SwaggerRequestDataProvider::getErrorResponseTypesImpl
*hash< string, AbstractDataProviderType > getErrorResponseTypesImpl()
Returns a hash of error responses, if any.
SwaggerDataProvider::SwaggerRequestDataProvider::rest
*RestClient rest
The REST client object for API calls.
Definition: SwaggerRequestDataProvider.qc.dox.h:41
SwaggerDataProvider::SwaggerRequestDataProvider::getRecordTypeImpl
*hash< string, AbstractDataField > getRecordTypeImpl(*hash< auto > search_options)
Returns the description of the record type, if any.
SwaggerDataProvider::SwaggerDataProviderBase
The Swagger data provider base class.
Definition: SwaggerDataProviderBase.qc.dox.h:34
SwaggerDataProvider::SwaggerRequestDataProvider::uri_path
string uri_path
The current URI path.
Definition: SwaggerRequestDataProvider.qc.dox.h:44
SwaggerDataProvider::SwaggerRequestDataProvider::record_type
*hash< string, AbstractDataField > record_type
If the request supports a list of hashes in the response and therefore the record API.
Definition: SwaggerRequestDataProvider.qc.dox.h:56
SwaggerDataProvider::SwaggerRequestDataProvider::getRestClient
RestClient getRestClient()
Returns a REST client for HTTP operations.
SwaggerDataProvider::SwaggerRequestDataProvider::doRequestIntern
hash< auto > doRequestIntern(auto req, *hash< auto > options)
Makes a REST request and returns the response.
SwaggerDataProvider::SwaggerRequestDataProvider::success_response
string success_response
The success response code, if any.
Definition: SwaggerRequestDataProvider.qc.dox.h:53
SwaggerDataProvider::SwaggerRequestDataProvider::op
OperationObject op
The operation object.
Definition: SwaggerRequestDataProvider.qc.dox.h:50
RestClient
SwaggerDataProvider::SwaggerRequestDataProvider::getUriValue
string getUriValue(auto v)
Returns the value for the given query argument.
SwaggerDataProvider::SwaggerRequestDataProvider::getUriPath
string getUriPath()
Returns the URI path to use in requests.
SwaggerDataProvider::SwaggerRequestDataProvider::doRequestImpl
auto doRequestImpl(auto req, *hash< auto > request_options)
Makes a request and returned the response.
SwaggerDataProvider::SwaggerRequestDataProvider
The Swagger data provider class.
Definition: SwaggerRequestDataProvider.qc.dox.h:34
SwaggerDataProvider
Qore SwaggerDataProvider module definition.
Definition: SwaggerDataProvider.qc.dox.h:32
SwaggerDataProvider::SwaggerRequestDataProvider::constructor
constructor(SwaggerSchema schema, *RestClient rest, string uri_path, OperationObject op)
Creates the object from the arguments.
SwaggerDataProvider::SwaggerRequestDataProvider::getInfo
hash< DataProviderInfo > getInfo()
Returns data provider info.
SwaggerDataProvider::SwaggerRequestDataProvider::resolve_uri
bool resolve_uri
The URI needs dynamic resolution.
Definition: SwaggerRequestDataProvider.qc.dox.h:47
SwaggerDataProvider::SwaggerRequestDataProvider::requestSearchRecordsImpl
AbstractDataProviderRecordIterator requestSearchRecordsImpl(auto req, *hash< auto > where_cond, *hash< auto > search_options)
Returns an iterator for zero or more records matching the search options.
SwaggerDataProvider::SwaggerRequestDataProvider::getErrorResponseTypeImpl
AbstractDataProviderType getErrorResponseTypeImpl(string error_code)
Returns the type for the given error code.
SwaggerDataProvider::SwaggerRequestDataProvider::getResponseTypeImpl
*AbstractDataProviderType getResponseTypeImpl()
Returns the description of a successful response message, if any.
SwaggerDataProvider::SwaggerRequestDataProvider::getRequestTypeImpl
*AbstractDataProviderType getRequestTypeImpl()
Returns the description of a successful request message, if any.
SwaggerDataProvider::SwaggerRequestDataProvider::getResponseTypeIntern
AbstractDataProviderType getResponseTypeIntern(ResponseObject response, string label)
Returns a data provider type object for a Swagger response.
SwaggerDataProvider::SwaggerRequestDataProvider::schema
SwaggerSchema schema
The Swagger schema.
Definition: SwaggerRequestDataProvider.qc.dox.h:38
SwaggerDataProvider::SwaggerRequestDataProvider::getSuccessResponse
*ResponseObject getSuccessResponse()
Returns the schema for the first successful response message found.
SwaggerDataProvider::SwaggerRequestDataProvider::getName
string getName()
Returns the data provider name.