Qore Swagger Module Reference 2.1
Loading...
Searching...
No Matches
OtherParameter Class Reference

AbstractParameterObject specialization for parameters other than "body". More...

#include <Swagger.qm.dox.h>

Inheritance diagram for OtherParameter:
[legend]

Public Member Methods

 check (bool serialize, bool request, string path, string method, string name, reference< auto > value)
 validates the value against the schema definition
 
 constructor (string name, hash< auto > oh, SwaggerSchema swagger)
 Constructor. More...
 
auto getDefaultValue ()
 returns the default value of the parameter (default: NOTHING)
 
auto getExampleValue ()
 returns an example value of the parameter (default: NOTHING)
 
- Public Member Methods inherited from AbstractParameterObject
abstract check (bool serialize, bool request, string path, string method, string name, reference value)
 verifies the parameter in an actual REST API call
 
 constructor (hash< auto > oh)
 Constructor. More...
 
auto getDefaultValue ()
 returns the default value of the parameter (default: NOTHING)
 

Public Attributes

bool allowEmptyValue = False
 Sets the ability to pass empty-valued parameters. More...
 
*string collectionFormat
 Determines the format of the array if type array is used. More...
 
auto defaultVal
 Declares the value of the parameter that the server will use if none is provided. More...
 
*string format
 The extending format for the previously mentioned type. See Data Type Formats for further details.
 
*ParameterItemsSchemaObject items
 Required if type is "array". Describes the type of items in the array.
 
const ParameterTypes = ...
 valid parameter types
 
string type
 Required. The type of the parameter. More...
 
- Public Attributes inherited from AbstractParameterObject
*string desc
 A brief description of the parameter. This could contain examples of use. GFM syntax can be used for rich text representation.
 
string inLoc
 Required. The location of the parameter. More...
 
string name
 Required. The name of the parameter. Parameter names are case sensitive. More...
 
bool required = False
 Determines whether this parameter is mandatory. More...
 

Static Private Member Methods

static checkValueType (reference< auto > value, string type, *SchemaObject items, *string loc)
 validates default values
 

Additional Inherited Members

- Static Public Member Methods inherited from AbstractParameterObject
static AbstractParameterObject newParameter (string name, hash< auto > oh, SwaggerSchema swagger)
 gets a concrete instance of an AbstractParameterObject
 

Detailed Description

AbstractParameterObject specialization for parameters other than "body".

Member Function Documentation

◆ constructor()

OtherParameter::constructor ( string  name,
hash< auto >  oh,
SwaggerSchema  swagger 
)

Constructor.

Parameters
namethe parameter name
ohdeserialized hash from the source schema description describing general parameters (other than "body" parameters)
swaggerthe REST schema for resolving references
Exceptions
INVALID-FIELD-TYPEfield has invalid type
INVALID-FIELD-VALUEfield has invalid value
REQUIRED-FIELD-MISSINGrequired field is missing

Member Data Documentation

◆ allowEmptyValue

bool OtherParameter::allowEmptyValue = False

Sets the ability to pass empty-valued parameters.

This is valid only for either query or formData parameters and allows you to send a parameter with a name only or an empty value. Default value is false.

◆ collectionFormat

*string OtherParameter::collectionFormat

Determines the format of the array if type array is used.

Possible values are:

  • "csv": comma separated values; ex: foo,bar
  • "ssv": space separated values; ex: foo bar
  • "tsv": tab separated values; ex: foo\tbar
  • "pipes": pipe separated values; ex: foo|bar
  • "multi": corresponds to multiple parameter instances instead of multiple values for a single instance foo=bar&foo=baz. This is valid only for parameters in "query" or "formData".

Default value is "csv".

◆ defaultVal

auto OtherParameter::defaultVal

Declares the value of the parameter that the server will use if none is provided.

For example a "count" to control the number of results per page might default to 100 if not supplied by the client in the request. (Note: "default" has no meaning for required parameters.) See https://tools.ietf.org/html/draft-fge-json-schema-validation-00#section-6.2. Unlike JSON Schema this value MUST conform to the defined type for this parameter.

◆ type

string OtherParameter::type

Required. The type of the parameter.

Since the parameter is not located at the request body, it is limited to simple types (that is, not an object). The value MUST be one of "string", "number", "integer", "boolean", "array" or "file". If type is "file", the consumes MUST be either "multipart/form-data", " application/x-www-form-urlencoded" or both and the parameter MUST be in "formData".