def initialize manifest, item
@manifest = manifest
@item = item
- raise 'blank foreign_key' + @manifest.name unless self.check_resource
# no check
# return false unless self.resource.enable?
- if extendable?
+ if self.extendable?
@item.extend self.engine_extend_module
@item.__send__ @manifest.setter_method_name, self.parsed_settings
end
- @boosted = true
- end
-
- def boosted?
- @boosted
end
# get engine resource from system resource manifest
end
def extendable?
- self.engine_module.constants.include? @manifest.extend_module_name
+ self.engine_module.constants.include? @manifest.extend_module_name.to_sym
end
# extend module in engine
# get system resource instance
def resource
+ raise 'blank foreign_key ' + @manifest.name unless self.check_resource
r = @item.__send__ @manifest.resource_name
raise 'resource not found' + @manifest.resource_name unless r
r
end
+ # get extend instance
+ def extend_item
+ @item.__send__ @manifest.getter_method_name
+ end
+
def parsed_settings
if self.settings.blank?
{}