Class: OpenapiFirst::Definition::PathItem

Inherits:
Object
  • Object
show all
Defined in:
lib/openapi_first/definition/path_item.rb

Overview

A pathItem as defined in the OpenAPI document.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path, path_item_object, openapi_version:) ⇒ PathItem

Returns a new instance of PathItem.



9
10
11
12
13
# File 'lib/openapi_first/definition/path_item.rb', line 9

def initialize(path, path_item_object, openapi_version:)
  @path = path
  @path_item_object = path_item_object
  @openapi_version = openapi_version
end

Instance Attribute Details

#pathObject (readonly)

Returns the value of attribute path.



15
16
17
# File 'lib/openapi_first/definition/path_item.rb', line 15

def path
  @path
end

Instance Method Details

#operation(request_method) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/openapi_first/definition/path_item.rb', line 17

def operation(request_method)
  return unless @path_item_object[request_method]

  Operation.new(
    @path, request_method, @path_item_object, openapi_version: @openapi_version
  )
end

#operationsObject



28
29
30
# File 'lib/openapi_first/definition/path_item.rb', line 28

def operations
  @operations ||= @path_item_object.slice(*METHODS).keys.map { |method| operation(method) }
end