Class: Scorpio::OpenAPI::OperationsScope

Inherits:
Object
  • Object
show all
Includes:
Enumerable, JSI::Memoize
Defined in:
lib/scorpio/openapi/operations_scope.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(openapi_document) ⇒ OperationsScope

Returns a new instance of OperationsScope.



6
7
8
# File 'lib/scorpio/openapi/operations_scope.rb', line 6

def initialize(openapi_document)
  @openapi_document = openapi_document
end

Instance Attribute Details

#openapi_documentObject (readonly)

Returns the value of attribute openapi_document.



9
10
11
# File 'lib/scorpio/openapi/operations_scope.rb', line 9

def openapi_document
  @openapi_document
end

Instance Method Details

#[](operationId_) ⇒ Object



22
23
24
25
26
# File 'lib/scorpio/openapi/operations_scope.rb', line 22

def [](operationId_)
  memoize(:[], operationId_) do |operationId|
    detect { |operation| operation.operationId == operationId }
  end
end

#eachObject



11
12
13
14
15
16
17
18
19
# File 'lib/scorpio/openapi/operations_scope.rb', line 11

def each
  openapi_document.paths.each do |path, path_item|
    path_item.each do |http_method, operation|
      if operation.is_a?(Scorpio::OpenAPI::Operation)
        yield operation
      end
    end
  end
end