SwaggerDataProvider::SwaggerRequestDataProvider Class Reference

The Swagger data provider class. More...

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.
*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.
private AbstractDataProviderRecordIterator | requestSearchRecordsImpl (auto req, *hash< DataProviderExpression > where_cond, *hash< auto > search_options)
| Returns an iterator for zero or more records matching the search options. More...
private AbstractDataProviderRecordIterator | requestSearchRecordsImpl (auto req, *hash< auto > where_cond, *hash< auto > search_options)
| Returns an iterator for zero or more records matching the search options. More...
Public Member Functions inherited from SwaggerDataProvider::SwaggerDataProviderBase
private | addFieldsFromParameters (HashDataType rv, hash< string, AbstractParameterObject > parameters, reference< bool > required)
| Returns a field definition from Swagger parameters.
private AbstractDataField | getFieldFromParameter (string path, string name, string type, *string format, *SchemaObject arrayItems, *string desc, bool required, *list< auto > allowed_values)
| Returns a field from a Swagger parameter.
private AbstractDataField | getFieldFromSchemaIntern (string path, string name, *string desc, SchemaObject schema, bool required=True)
| Returns a field definition from the Swagger parameter.
private AbstractDataProviderType | getType (string path, string typestr, *string format, *SchemaObject arrayItems, bool required=True)
| Returns the data type corresponding to the values.

## 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.
bool | resolve_uri
| The URI needs dynamic resolution.
*RestClient | rest
| The REST client object for API calls.
SwaggerSchema | schema
| The Swagger schema.
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. More...
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. More...
*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. More...
*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.
Protected Member Functions inherited from SwaggerDataProvider::SwaggerDataProviderBase
AbstractDataField | getFieldForHeaders (string name, hash< auto > headers)
| Returns a field of header fields.
AbstractDataField | getFieldFromSchema (string name, *string desc, SchemaObject schema, bool required=True)
| Returns a field definition from the Swagger parameter.
AbstractDataProviderType | getSchemaDataType (string path, SchemaObject schema, bool required=True)
| Returns the data type for the given schema.
hash< DataProviderInfo > | getStaticInfoImpl ()
| Returns data provider static info.

## Detailed Description

The Swagger data provider class.

## Member Function Documentation

## doRequestImpl()

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

protected

Makes a request and returned the response.

Parameters

  req | the request to serialize and make according to the request type
  request_options | the 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_code | the 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-RESPONSE | the 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]

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

inline

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

Parameters

  req | the request to serialize and make according to the request type
  where_cond | the search criteria
  search_options | the search options after processing by validateSearchOptions()

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

Exceptions

  SWAGGER-SEARCH-ERROR | the response type is not list or hash and does not support searching

## requestSearchRecordsImpl() [2/2]

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

inline

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

Parameters

  req | the request to serialize and make according to the request type
  where_cond | the search criteria
  search_options | the search options after processing by validateSearchOptions()

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

Exceptions

  SWAGGER-SEARCH-ERROR | the response type is not list or hash and does not support searching