Qore SwaggerDataProvider Module Reference 1.3
Loading...
Searching...
No Matches
SwaggerDataProvider::SwaggerRequestDataProvider Class Reference

The Swagger data provider class. More...

#include <SwaggerRequestDataProvider.qc.dox.h>

Inheritance diagram for SwaggerDataProvider::SwaggerRequestDataProvider:
[legend]

Public Member Functions

 constructor (SwaggerSchema schema, *RestClient rest, string uri_path, PathItemObject pio, OperationObject op)
 Creates the object from the arguments.
 disableRequestTypeCheck ()
 Disable the request type check.
auto doRequest (auto req, *hash< auto > request_options)
 Makes a request and returns the response.
*string getDesc ()
 Returns the data provider description.
hash< DataProviderInfo > getInfo ()
 Returns data provider info.
string getName ()
 Returns the data provider name.
string getUriValue (auto v)
 Returns the value for the given query argument.
Public Member Functions inherited from SwaggerDataProvider::SwaggerDataProviderBase
 constructor ()
 Creates the object.
 constructor (RestClient::RestClient rest)
 Creates the object.
Public Member Functions inherited from SwaggerDataProvider::SwaggerDataProviderCommon
 constructor ()
 Creates the object.
 constructor (RestClient::RestClient rest)
 Creates the object.
SwaggerSchema getSchema ()
 Returns the Swagger schema.
 setLogger (*LoggerInterface logger)
 Accepts a LoggerInterface object for logging (or clears it).
 setRestClient (RestClient::RestClient rest)
 Sets the RestClient.
*RestClient::RestClient tryGetRestClient ()
 Returns the RestClient.

Public Attributes

OperationObject op
 The operation object.
PathItemObject pio
 The path item object for the operation.
*hash< string, AbstractDataField > record_type
 If the request supports a list of hashes in the response and therefore the record API.
AbstractDataProviderType request_type
 The request type.
bool resolve_uri
 The URI needs dynamic resolution.
*list< string > response_headers
 Any headers to return in the response.
AbstractDataProviderType response_type
 The response type.
string success_response
 The success response code, if any.
string uri_path
 The current URI path.

Protected Member Functions

auto doRequestImpl (auto req, *hash< auto > request_options)
 Makes a request and returned the response.
*hash< auto > doRequestIntern (auto req, *hash< auto > options)
 Makes a REST request and returns the response.
AbstractDataProviderType getErrorResponseTypeImpl (string error_code)
 Returns the type for the given error code.
*hash< string, AbstractDataProviderType > getErrorResponseTypesImpl ()
 Returns a hash of error responses, if any.
*hash< string, AbstractDataField > getRecordTypeImpl (*hash< auto > search_options)
 Returns the description of the record type, if any.
*AbstractDataProviderType getRequestTypeImpl ()
 Returns the description of a successful request message, if any.
*AbstractDataProviderType getResponseTypeImpl ()
 Returns the description of a successful response message, if any.
AbstractDataProviderType getResponseTypeIntern (ResponseObject response, string label)
 Returns a data provider type object for a Swagger response.
RestClient getRestClient ()
 Returns a REST client for HTTP operations.
hash< DataProviderInfo > getStaticInfoImpl ()
 Returns data provider static info.
*ResponseObject getSuccessResponse ()
 Returns the schema for the first successful response message found.
string getUriPath ()
 Returns the URI path to use in requests.
AbstractDataProviderRecordIterator requestSearchRecordsImpl (auto req, *hash< DataProviderExpression > where_cond, *hash< auto > search_options)
 Returns an iterator for zero or more records matching the search options.
AbstractDataProviderRecordIterator requestSearchRecordsImpl (auto req, *hash< auto > where_cond, *hash< auto > search_options)
 Returns an iterator for zero or more records matching the search options.
Protected Member Functions inherited from SwaggerDataProvider::SwaggerDataProviderBase
hash< DataProviderInfo > getStaticInfoImpl ()
 Returns data provider static info.

Protected Attributes

bool disable_request_type_check
 Disable checking the request type.
Protected Attributes inherited from SwaggerDataProvider::SwaggerDataProviderCommon
*RestClient::RestClient rest
 The REST client object for API calls.
SwaggerSchema schema
 The Swagger schema.

Detailed Description

The Swagger data provider class.

Member Function Documentation

◆ doRequest()

auto SwaggerDataProvider::SwaggerRequestDataProvider::doRequest ( auto req,
*hash< auto > request_options )

Makes a request and returns the response.

Parameters
reqthe request to serialize and make according to the request type
request_optionsthe request options; will be processed by validateRequestOptions()
Returns
the response to the request
Exceptions
INVALID-OPERATIONthe data provider does not support the request API
INVALID-REQUESTthe request argument provided do not match the expected request type

◆ doRequestImpl()

auto SwaggerDataProvider::SwaggerRequestDataProvider::doRequestImpl ( auto req,
*hash< auto > request_options )
protected

Makes a request and returned the response.

Parameters
reqthe request to serialize and make according to the request type
request_optionsthe request options; will be processed by validateRequestOptions()
Returns
the response to the request

◆ getErrorResponseTypeImpl()

AbstractDataProviderType SwaggerDataProvider::SwaggerRequestDataProvider::getErrorResponseTypeImpl ( string error_code)
protected

Returns the type for the given error code.

Parameters
error_codethe error code for the response; must be a known error code, or an UNKNOWN-ERROR-RESPONSE exception is thrown
Returns
the type for the given error code
Exceptions
UNKNOWN-ERROR-RESPONSEthe error response given is not known

◆ getRecordTypeImpl()

*hash< string, AbstractDataField > SwaggerDataProvider::SwaggerRequestDataProvider::getRecordTypeImpl ( *hash< auto > search_options)
protected

Returns the description of the record type, if any.

Returns the record type description for any successful response

◆ requestSearchRecordsImpl() [1/2]

AbstractDataProviderRecordIterator SwaggerDataProvider::SwaggerRequestDataProvider::requestSearchRecordsImpl ( auto req,
*hash< DataProviderExpression > where_cond,
*hash< auto > search_options )
protected

Returns an iterator for zero or more records matching the search options.

Parameters
reqthe request to serialize and make according to the request type
where_condthe search criteria
search_optionsthe search options after processing by validateSearchOptions()

This will execute the request and perform a default search on any record(s) returned

Exceptions
SWAGGER-SEARCH-ERRORthe response type is not list or hash and does not support searching

◆ requestSearchRecordsImpl() [2/2]

AbstractDataProviderRecordIterator SwaggerDataProvider::SwaggerRequestDataProvider::requestSearchRecordsImpl ( auto req,
*hash< auto > where_cond,
*hash< auto > search_options )
protected

Returns an iterator for zero or more records matching the search options.

Parameters
reqthe request to serialize and make according to the request type
where_condthe search criteria
search_optionsthe search options after processing by validateSearchOptions()

This will execute the request and perform a default search on any record(s) returned

Exceptions
SWAGGER-SEARCH-ERRORthe response type is not list or hash and does not support searching