Qore Swagger Module Reference 2.2.3
Loading...
Searching...
No Matches
Swagger::PathItemObject Class Reference

Describes the operations available on a single path. More...

#include <Swagger.qm.dox.h>

Inheritance diagram for Swagger::PathItemObject:
[legend]

Public Member Methods

 constructor (string path, hash< auto > oh, SwaggerSchema swagger)
 Constructor.
 
softlist getMethods ()
 returns a list of HTTP methods supported by this object
 
OperationObject getOperation (string method, string path)
 returns the operation object for the given method
 
 merge (string path, hash< auto > oh, SwaggerSchema swagger)
 Try to merge another PathItemObject description for the same path into this one.
 
- Public Member Methods inherited from Swagger::ParameterGroup
 addParameter (AbstractParameterObject p)
 Adds a parameter to the group.
 
 addParameter (string key, AbstractParameterObject p)
 Adds a parameter to the group.
 
 constructor (hash< auto > oh)
 Creates the object from the hash definition.
 
hash< string, AbstractParameterObjectparameters ()
 A hash of parameters for this object.
 
- Public Member Methods inherited from Swagger::ObjectBase
 constructor ()
 Constructor.
 
 constructor (hash< auto > oh)
 Constructor.
 
 constructor (ObjectBase other)
 copy constructor
 
 initialize (hash< auto > oh)
 Initialize.
 

Public Attributes

AbstractParameterObject body
 The body parameter, if defined.
 
*string ref
 Allows for an external definition of this path item.
 
- Public Attributes inherited from Swagger::ParameterGroup
string query_obj
 Any query param with type "object"? (OpenAPI 3 compatible)
 
- Public Attributes inherited from Swagger::ObjectBase
hash< auto > vendorExtensions
 Allows extensions to the Swagger Schema.
 

Private Attributes

const ObjType = "Path Item"
 This objet type.
 
hash< string, OperationObjectoperations
 A hash of OperationObjects correspoding to different methods.
 

Detailed Description

Describes the operations available on a single path.

A Path Item may be empty, due to ACL constraints. The path itself is still exposed to the documentation viewer but they will not know which operations and parameters are available.

Member Function Documentation

◆ constructor()

Swagger::PathItemObject::constructor ( string  path,
hash< auto >  oh,
SwaggerSchema  swagger 
)

Constructor.

Parameters
paththe URI path for the object
ohdeserialized hash from the source schema description describing the operations available on a single path
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

◆ getMethods()

softlist Swagger::PathItemObject::getMethods ( )

returns a list of HTTP methods supported by this object

Returns
a list of HTTP methods supported by this object

◆ getOperation()

OperationObject Swagger::PathItemObject::getOperation ( string  method,
string  path 
)

returns the operation object for the given method

Parameters
paththe path to be used in any error message
methodthe HTTP method name
Returns
the OperationObject corresponding to the arguments
Exceptions
INVALID-METHODthe given path does not have any operation defined for the given method

Member Data Documentation

◆ operations

hash<string, OperationObject> Swagger::PathItemObject::operations
private

A hash of OperationObjects correspoding to different methods.

Keys are lowercase method names, with possible values being:

  • "get"
  • "put"
  • "post"
  • "delete"
  • "options"
  • "head"
  • "patch"

◆ ref

*string Swagger::PathItemObject::ref

Allows for an external definition of this path item.

The referenced structure MUST be in the format of a PathItemObject. If there are conflicts between the referenced definition and this PathItem's definition, the behavior is undefined.