class Godmin::EngineWrapper
Attributes
engine[R]
Public Class Methods
new(controller)
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 5 def initialize(controller) @engine = find_engine(controller) end
Public Instance Methods
namespace()
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 9 def namespace @namespace ||= engine.railtie_namespace end
namespaced?()
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 13 def namespaced? @namespaced ||= namespace.present? end
namespaced_path()
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 17 def namespaced_path @namespaced_path ||= begin if namespaced? namespace.name.split("::").map(&:underscore) else [] end end end
root()
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 27 def root engine.root end
Private Instance Methods
find_engine(controller)
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 33 def find_engine(controller) engine_module = find_engine_module(controller) if engine_module "#{engine_module}::Engine".constantize else Rails.application end end
find_engine_module(controller)
click to toggle source
# File lib/godmin/engine_wrapper.rb, line 52 def find_engine_module(controller) parents_of(controller).find do |parent| parent.respond_to?(:use_relative_model_naming?) && parent.use_relative_model_naming? end end
parents_of(controller)
click to toggle source
Some gymnastics because the ‘parents` function is slated for deprecation and being replaced by `module_parents` and we don’t want to clutter our log with a million warnings
# File lib/godmin/engine_wrapper.rb, line 46 def parents_of(controller) return controller.module_parents if controller.respond_to?(:module_parents) controller.parents end