class HecksApplication::QueryRunner
Call queries by name
Public Class Methods
new(query_name:, application:, module_name:, args:)
click to toggle source
# File lib/queries/query_runner.rb, line 5 def initialize(query_name:, application:, module_name:, args:) @query_name = query_name @application = application @module_name = module_name @args = args end
Public Instance Methods
call()
click to toggle source
# File lib/queries/query_runner.rb, line 12 def call() fetch.new(repository: repository).call(@args) end
Private Instance Methods
fetch()
click to toggle source
# File lib/queries/query_runner.rb, line 18 def fetch Queries.const_get(@query_name.to_s.camelcase) end
repository()
click to toggle source
# File lib/queries/query_runner.rb, line 22 def repository @application.database[@module_name] end