class Inferno::Web::Controllers::Controller
Public Class Methods
call(params)
click to toggle source
Ensure that each request gets a new instance of the controller.
# File lib/inferno/apps/web/controllers/controller.rb, line 6 def self.call(params) new.call(params) end
inherited(subclass)
click to toggle source
Calls superclass method
# File lib/inferno/apps/web/controllers/controller.rb, line 10 def self.inherited(subclass) super # This does some sort of magic that requires it be included in the # subclass rather than superclass. subclass.include Hanami::Action subclass.include Import[repo: "repositories.#{subclass.resource_name}"] subclass.define_method(:serialize) do |*args| Inferno::Web::Serializers.const_get(self.class.resource_class).render(*args) end end
resource_class()
click to toggle source
# File lib/inferno/apps/web/controllers/controller.rb, line 28 def self.resource_class name.split('::')[-2].singularize end
resource_name()
click to toggle source
# File lib/inferno/apps/web/controllers/controller.rb, line 24 def self.resource_name name.split('::')[-2].underscore end