Module: ActiveResponse

Defined in:
lib/active_response.rb,
lib/active_response/railtie.rb,
lib/active_response/version.rb,
lib/active_response/controller.rb,
lib/active_response/responders/js.rb,
lib/active_response/controller/core.rb,
lib/active_response/responders/base.rb,
lib/active_response/responders/html.rb,
lib/active_response/responders/json.rb,
lib/active_response/responders/json_api.rb,
lib/active_response/controller/crud_defaults.rb,
lib/active_response/controller/resource_helper.rb,
lib/active_response/controller/crud_defaults/new.rb,
lib/active_response/controller/default_responses.rb,
lib/active_response/controller/crud_defaults/edit.rb,
lib/active_response/controller/crud_defaults/show.rb,
lib/active_response/controller/crud_defaults/index.rb,
lib/active_response/controller/crud_defaults/create.rb,
lib/active_response/controller/crud_defaults/update.rb,
lib/active_response/controller/crud_defaults/destroy.rb

Defined Under Namespace

Modules: Controller, Responders Classes: Railtie

Constant Summary collapse

VERSION =
'0.0.2'

Class Method Summary collapse

Class Method Details

.registered_respondersObject



18
19
20
21
22
# File 'lib/active_response.rb', line 18

def self.registered_responders
  return @registered_responders if @registered_responders.present?
  Dir[Rails.root.join('app', 'responders', '*.rb')].each { |file| require_dependency file }
  @registered_responders = ActiveResponse::Responders::Base.descendants
end

.responder_for(format) ⇒ Object



11
12
13
14
15
16
# File 'lib/active_response.rb', line 11

def self.responder_for(format)
  responders[format] ||=
    registered_responders
      .sort_by { |d| -d.ancestors.count }
      .detect { |responder| responder.formats.include?(format) }
end