Class: Render::Definition
- Inherits:
-
Object
- Object
- Render::Definition
- Defined in:
- lib/render/definition.rb
Class Attribute Summary collapse
-
.instances ⇒ Object
Returns the value of attribute instances.
Class Method Summary collapse
Class Attribute Details
.instances ⇒ Object
Returns the value of attribute instances.
6 7 8 |
# File 'lib/render/definition.rb', line 6 def instances @instances end |
Class Method Details
.find(title) ⇒ Object
23 24 25 26 27 |
# File 'lib/render/definition.rb', line 23 def find(title) instances.fetch(title.to_sym) rescue KeyError => error raise Errors::DefinitionNotFound.new(title) end |
.load!(definition) ⇒ Object
18 19 20 21 |
# File 'lib/render/definition.rb', line 18 def load!(definition) title = definition.fetch(:universal_title, definition.fetch(:title)).to_sym self.instances[title] = definition end |
.load_from_directory!(directory) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/render/definition.rb', line 8 def load_from_directory!(directory) Dir.glob("#{directory}/**/*.json").each do |definition_file| Render.logger.info("Reading #{definition_file} definition") definition_string = File.read(definition_file) json_definition = JSON.parse(definition_string) parsed_definition = Extensions::DottableHash.new(json_definition).recursively_symbolize_keys! load!(parsed_definition) end end |