class Edgarj::Engine
Public Class Methods
load_config()
click to toggle source
load this engine's config (rails_config default loads from only Rails.root/config/…)
# File lib/edgarj/engine.rb, line 13 def self.load_config engine_config_dir = Pathname.new(File.expand_path('../../../config', __FILE__)) Settings.prepend_source!((engine_config_dir + 'settings.yml').to_s) Settings.prepend_source!((engine_config_dir + "settings/#{Rails.env}.yml").to_s) Settings.reload! end
load_decorators()
click to toggle source
Require/load (based on config) all decorators from app/decorators/
thanks:
-
edgeguides.rubyonrails.org/engines.html#overriding-models-and-controllers
-
github.com/resolve/refinerycms/commit/3387b547f8e58c9fced9eee78ca1bd2acd2588c2
# File lib/edgarj/engine.rb, line 36 def self.load_decorators [ Dir.glob(File.join(Rails.root, "app/decorators/**/*_decorator.rb")) ].flatten.each do |decorator| Rails.application.config.cache_classes ? require(decorator) : load(decorator) end end
load_edgarj_conf_in_app()
click to toggle source
Require/load application side edgarj config in RAILS_ROOT/config/edgarj/
# File lib/edgarj/engine.rb, line 21 def self.load_edgarj_conf_in_app [ Dir.glob(File.join(Rails.root, "config/edgarj/**/*.rb")) ].flatten.each do |edgarj_conf| Rails.application.config.cache_classes ? require(edgarj_conf) : load(edgarj_conf) end end
make_work_dir()
click to toggle source
make edgarj related work directories
# File lib/edgarj/engine.rb, line 47 def self.make_work_dir for dir in [Settings.edgarj.work_dir, Settings.edgarj.csv_dir] do FileUtils.mkdir_p(dir) if !File.directory?(dir) end end