class Apipie::ResponseDescription::ResponseObject

Attributes

additional_properties[RW]
typename[RW]

Public Class Methods

new(method_description, scope, block, typename) click to toggle source
# File lib/apipie/response_description.rb, line 10
def initialize(method_description, scope, block, typename)
  @method_description = method_description
  @scope = scope
  @param_group = {scope: scope}
  @additional_properties = false
  @typename = typename

  self.instance_exec(&block) if block

  prepare_hash_params
end

Public Instance Methods

_default_param_group_scope() click to toggle source

this routine overrides Param#_default_param_group_scope and is called if Param#param_group is invoked during the instance_exec call in ResponseObject#initialize

# File lib/apipie/response_description.rb, line 24
def _default_param_group_scope
  @scope
end
name() click to toggle source
# File lib/apipie/response_description.rb, line 28
def name
  "response #{@code} for #{@method_description.method}"
end
params_ordered() click to toggle source
# File lib/apipie/response_description.rb, line 32
def params_ordered
  @params_ordered ||= _apipie_dsl_data[:params].map do |args|
    options = args.find { |arg| arg.is_a? Hash }
    options[:param_group] = @param_group
    Apipie::ParamDescription.from_dsl_data(@method_description, args) unless options[:only_in] == :request
  end.compact
end
prepare_hash_params() click to toggle source
# File lib/apipie/response_description.rb, line 40
def prepare_hash_params
  @hash_params = params_ordered.reduce({}) do |h, param|
    h.update(param.name.to_sym => param)
  end
end