module GrapeOnRails
rubocop:disable ModuleFunction, ClassVars
Constants
- VERSION
Public Instance Methods
load()
click to toggle source
# File lib/grape_on_rails.rb, line 34 def load config = load_file Kernel.send(:remove_const, short_name) if Kernel.const_defined?(short_name) Kernel.const_set short_name, config Models.set_default_model_actors config create_error_class config end
Also aliased as: reload
setup() { |self| ... }
click to toggle source
# File lib/grape_on_rails.rb, line 28 def setup return if @@_ran_once @@_ran_once = true block_given? ? yield(self) : hook_rails_layers end
Private Instance Methods
create_error_class(config)
click to toggle source
# File lib/grape_on_rails.rb, line 51 def create_error_class config config.errors.each do |error| next if error.second.skip_create_error error_name = error.first.to_s.classify APIError.const_set error_name, Class.new(APIError::Base) unless APIError.const_defined?(error_name) end end
hook_controller(*modules)
click to toggle source
# File lib/grape_on_rails.rb, line 64 def hook_controller *modules modules.each do |mod| ActionController::Metal.include mod unless ActionController::Metal < mod end end
hook_model(*modules)
click to toggle source
# File lib/grape_on_rails.rb, line 70 def hook_model *modules modules.each do |mod| ActiveRecord::Base.extend mod unless ActiveRecord::Base.singleton_class < mod end end
hook_rails_layers()
click to toggle source
# File lib/grape_on_rails.rb, line 59 def hook_rails_layers hook_controller GrapeOnRails::API, GrapeOnRails::Authenticator hook_model GrapeOnRails::Models end
load_file()
click to toggle source
# File lib/grape_on_rails.rb, line 45 def load_file file = Rails.root.join("config", config_file) source = Sources::YAMLSource.new(file.to_s).load StructuralHash.new.from_hash source end