Class: OpenapiRuby::Components::Loader

Inherits:
Object
  • Object
show all
Defined in:
lib/openapi_ruby/components/loader.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(paths: nil, scope: nil) ⇒ Loader

Returns a new instance of Loader.



8
9
10
11
# File 'lib/openapi_ruby/components/loader.rb', line 8

def initialize(paths: nil, scope: nil)
  @paths = paths || OpenapiRuby.configuration.component_paths
  @scope = scope&.to_sym
end

Instance Attribute Details

#pathsObject (readonly)

Returns the value of attribute paths.



6
7
8
# File 'lib/openapi_ruby/components/loader.rb', line 6

def paths
  @paths
end

Instance Method Details

#callbacksObject



55
56
57
# File 'lib/openapi_ruby/components/loader.rb', line 55

def callbacks
  filter_type(:callbacks)
end

#examplesObject



47
48
49
# File 'lib/openapi_ruby/components/loader.rb', line 47

def examples
  filter_type(:examples)
end

#headersObject



43
44
45
# File 'lib/openapi_ruby/components/loader.rb', line 43

def headers
  filter_type(:headers)
end


51
52
53
# File 'lib/openapi_ruby/components/loader.rb', line 51

def links
  filter_type(:links)
end

#load!Object



13
14
15
16
17
# File 'lib/openapi_ruby/components/loader.rb', line 13

def load!
  define_namespace_modules!
  load_component_files!
  self
end

#parametersObject



27
28
29
# File 'lib/openapi_ruby/components/loader.rb', line 27

def parameters
  filter_type(:parameters)
end

#request_bodiesObject



35
36
37
# File 'lib/openapi_ruby/components/loader.rb', line 35

def request_bodies
  filter_type(:requestBodies)
end

#responsesObject



39
40
41
# File 'lib/openapi_ruby/components/loader.rb', line 39

def responses
  filter_type(:responses)
end

#schemasObject



23
24
25
# File 'lib/openapi_ruby/components/loader.rb', line 23

def schemas
  filter_type(:schemas)
end

#security_schemesObject



31
32
33
# File 'lib/openapi_ruby/components/loader.rb', line 31

def security_schemes
  filter_type(:securitySchemes)
end

#to_openapi_hashObject



19
20
21
# File 'lib/openapi_ruby/components/loader.rb', line 19

def to_openapi_hash
  Registry.instance.to_openapi_hash(scope: @scope)
end