Class: Mihari::Services::JbuilderRenderer

Inherits:
Mihari::Service show all
Defined in:
lib/mihari/services/renderer.rb

Overview

Jbuilder based JSON renderer

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Mihari::Service

call, #result, result

Instance Attribute Details

#templateObject (readonly)

Returns the value of attribute template.



11
12
13
# File 'lib/mihari/services/renderer.rb', line 11

def template
  @template
end

Instance Method Details

#call(template, params = {}) ⇒ String

Parameters:

  • template (String)
  • params (Hash) (defaults to: {})

Returns:

  • (String)


19
20
21
22
23
24
# File 'lib/mihari/services/renderer.rb', line 19

def call(template, params = {})
  @template = template

  jbuilder_template = Tilt::JbuilderTemplate.new { template_string }
  jbuilder_template.render(nil, params)
end

#template_stringObject



26
27
28
29
30
# File 'lib/mihari/services/renderer.rb', line 26

def template_string
  return File.read(template) if Pathname(template).exist?

  template
end