class R2OAS::Routing::Adjustor

Constants

VALID_KEYS

Public Class Methods

new(route_data) click to toggle source
# File lib/r2-oas/routing/adjustor.rb, line 11
def initialize(route_data)
  valid_route_data?(route_data)
  @route_data = route_data
  @route = route_data[:route]
  @path_comp = PathComponent.new(route_data[:path])
  @request_comp = RequestComponent.new(route_data[:reqs], @route.engine?)
  @verb_comp = VerbComponent.new(route_data[:verb])
  @verbs = @verb_comp.verbs
end

Public Instance Methods

routes_els() click to toggle source
# File lib/r2-oas/routing/adjustor.rb, line 21
def routes_els
  @verbs.each_with_object([]) do |verb, result|
    route_el = {}
    route_el[:path] = @path_comp.symbol_to_brace
    route_el[:data] = {
      verb: verb,
      path: @path_comp.symbol_to_brace,
      tag_name: @request_comp.to_tag_name,
      schema_name: @request_comp.to_schema_name,
      format_name: @request_comp.to_format_name,
      required_parameters: @path_comp.path_parameters_data
    }
    result.push route_el
  end
end

Private Instance Methods

valid_route_data?(route_data) click to toggle source
# File lib/r2-oas/routing/adjustor.rb, line 39
def valid_route_data?(route_data)
  raise 'Invalid params' unless route_data.keys.eql?(VALID_KEYS)
end