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.



9
10
11
# File 'lib/mihari/services/renderer.rb', line 9

def template
  @template
end

Instance Method Details

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

Parameters:

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

Returns:

  • (String)


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

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

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

#template_stringObject



24
25
26
27
28
# File 'lib/mihari/services/renderer.rb', line 24

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

  template
end