Class: ConfigTemplates::Models::Component

Inherits:
Object
  • Object
show all
Defined in:
lib/config_templates/models/component.rb

Instance Method Summary collapse

Constructor Details

#initialize(template, context, validators, engines) ⇒ Component

Returns a new instance of Component.



3
4
5
6
7
8
# File 'lib/config_templates/models/component.rb', line 3

def initialize(template, context, validators, engines)
  @template = template
  @context = context
  @validators = validators
  @engines = engines
end

Instance Method Details

#destinationObject



10
11
12
# File 'lib/config_templates/models/component.rb', line 10

def destination
  engine.output_file_name @template.destination
end

#renderObject



20
21
22
# File 'lib/config_templates/models/component.rb', line 20

def render
  @render ||= engine.evaluate @template.content, @context
end

#validate!Object



14
15
16
17
18
# File 'lib/config_templates/models/component.rb', line 14

def validate!
  unless validator.valid? render
    raise ::ConfigTemplates::Errors::InvalidTemplate, @template.path
  end
end