Module: Ruote::TemplateMixin
- Included in:
- SmtpParticipant
- Defined in:
- lib/ruote/part/template.rb
Overview
Template rendering helper.
(Currently only used by the SmtpParticipant, could prove useful for custom participants)
This module expects to find the ruote @context available (probably accessible thanks to the Ruote::LocalParticipant module, see Ruote::SmtpParticipant as an example).
Instance Method Summary (collapse)
-
- (Object) render_default_template(workitem)
Simply returns a pretty-printed view of the workitem.
-
- (Object) render_template(template, flow_expression, workitem)
Do the rendering.
Instance Method Details
- (Object) render_default_template(workitem)
Simply returns a pretty-printed view of the workitem
58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/ruote/part/template.rb', line 58 def render_default_template(workitem) workitem = workitem.to_h if workitem.respond_to?(:to_h) s = [] s << "workitem for #{workitem['participant_name']}" s << '' s << Rufus::Json.pretty_encode(workitem['fei']) s << '' workitem['fields'].keys.sort.each do |key| s << " - '#{key}' ==> #{Rufus::Json.encode(workitem['fields'][key])}" end s.join("\n") end |
- (Object) render_template(template, flow_expression, workitem)
Do the rendering.
44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/ruote/part/template.rb', line 44 def render_template(template, flow_expression, workitem) template = (File.read(template) rescue nil) if is_a_file?(template) return render_default_template(workitem) unless template template = template.to_s workitem = workitem.to_h if workitem.respond_to?(:to_h) @context.dollar_sub.s(template, flow_expression, workitem) end |