3 cattr_accessor :manifest
4 attr :system_resources, :magic_numbers,
6 :list_groups, :profilers, :filers, :forms
7 # call me before load routes.rb
8 # routes.rb needs engine_resources manifest in system_resources
9 # ex. it's adding license_groups routes
10 def initialize manifest
11 @manifest = manifest || {}
12 @system_resources = SystemResource.new(self, SystemResource.set_default(@manifest['system_resources']))
13 @magic_numbers = @manifest['magic_numbers']
17 # managers can't initialize before load application.rb
18 return unless defined? ::Pettanr
19 @controllers = Controller.manager(self, @manifest['controllers'] || {})
20 @models = Model.manager(self, @manifest['models'] || {})
21 @locals = @manifest['locals']
22 @list_groups = ListGroup.manager(self, @locals['list_groups'] || {})
23 @filers = Filer.manager(self, @locals['filers'] || {})
24 @profilers = Profiler.manager(self, @locals['profilers'] || {})
25 @forms = Form.base_manager(self, @locals['forms'] || {})
26 @forms.merge(Form.extend_manager(self, @locals['forms'] || {}))
27 @system_resources.init
30 def load_models_manifest
31 @models.each do |model_name, model|
32 model.classify.load_manifest
44 Manifest.manifest = Manifest.new json
47 def item_name_to_model item_name
48 item_name.classify.constantize