class R2OAS::Schema::V3::PathsObject
Public Class Methods
new(routes_data, opts = {})
click to toggle source
Calls superclass method
R2OAS::Schema::V3::BaseObject::new
# File lib/r2-oas/schema/v3/object/from_routes/paths_object.rb, line 11 def initialize(routes_data, opts = {}) super(opts) @routes_data = routes_data end
Public Instance Methods
create_doc()
click to toggle source
# File lib/r2-oas/schema/v3/object/from_routes/paths_object.rb, line 21 def create_doc if unit_paths_file_path.present? unit_paths_data = YAML.load_file(unit_paths_file_path)['paths'] result = unit_paths_data.each_with_object({}) do |(path, path_item_doc), docs| docs[path] = PathItemObject.new(path_item_doc, path, @opts).to_doc end else result = path_item_docs.each_with_object({}) do |(path, path_item_doc), docs| docs[path] = path_item_doc end end doc.merge!(result) end
to_doc()
click to toggle source
# File lib/r2-oas/schema/v3/object/from_routes/paths_object.rb, line 16 def to_doc create_doc doc end
Private Instance Methods
path_item_docs()
click to toggle source
# File lib/r2-oas/schema/v3/object/from_routes/paths_object.rb, line 37 def path_item_docs # e.x.) # [ # { path: "/tasks", data: {:verb=>"get", :path=>"/tasks", :tag_name=>"task" } }, # ] @routes_data.each_with_object({}) do |(route_el), data| path = route_el[:path] route_data = route_el[:data] path_item_doc = PathItemObject.new(route_data, path, @opts).to_doc if data[path].present? data[path].merge!(path_item_doc) else data[path] = path_item_doc end end end