Class: RoadForest::TypeHandlers::RDFaWriter::TemplateHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/roadforest/type-handlers/rdfa-writer/render-engine.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#haml_optionsObject

Returns the value of attribute haml_options.



12
13
14
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 12

def haml_options
  @haml_options
end

#resource_nameObject

Returns the value of attribute resource_name.



13
14
15
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 13

def resource_name
  @resource_name
end

#style_nameObject



20
21
22
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 20

def style_name
  @style_name ||= "base"
end

#template_cacheObject



16
17
18
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 16

def template_cache
  @template_cache ||= ::Tilt::Cache.new
end

#valiseObject

Returns the value of attribute valise.



12
13
14
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 12

def valise
  @valise
end

Instance Method Details

#find_template(kinds) ⇒ Object



37
38
39
40
41
42
43
44
45
46
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 37

def find_template(kinds)
  kind = kinds.shift
  templates.contents(kind)
rescue Valise::Errors::NotFound
  if kinds.empty?
    raise
  else
    retry
  end
end

#templatesObject



24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/roadforest/type-handlers/rdfa-writer/render-engine.rb', line 24

def templates
  @templates ||= [resource_name, style_name, nil].uniq.map do |name|
    valise.sub_set(["templates", name].compact.join("/"))
  end.inject do |left, right|
    left + right
  end.handle_templates do |config|
    #At some point, should look into using HTML entities to preserve
    #whitespace in XMLLiterals
    options = {:format => :xhtml}.merge(haml_options || {:ugly => true})
    config.add_type("haml", { :template_cache => template_cache, :template_options => options })
  end
end