Class: Aldous::ViewBuilder
- Inherits:
-
Object
- Object
- Aldous::ViewBuilder
- Defined in:
- lib/aldous/view_builder.rb
Instance Attribute Summary collapse
-
#default_view_data ⇒ Object
readonly
Returns the value of attribute default_view_data.
-
#view_context ⇒ Object
readonly
Returns the value of attribute view_context.
Instance Method Summary collapse
- #build(respondable_class, extra_view_data = {}, status = nil) ⇒ Object
-
#initialize(view_context, default_view_data) ⇒ ViewBuilder
constructor
A new instance of ViewBuilder.
Constructor Details
#initialize(view_context, default_view_data) ⇒ ViewBuilder
Returns a new instance of ViewBuilder.
7 8 9 10 |
# File 'lib/aldous/view_builder.rb', line 7 def initialize(view_context, default_view_data) @view_context = view_context @default_view_data = default_view_data end |
Instance Attribute Details
#default_view_data ⇒ Object (readonly)
Returns the value of attribute default_view_data.
5 6 7 |
# File 'lib/aldous/view_builder.rb', line 5 def default_view_data @default_view_data end |
#view_context ⇒ Object (readonly)
Returns the value of attribute view_context.
5 6 7 |
# File 'lib/aldous/view_builder.rb', line 5 def view_context @view_context end |
Instance Method Details
#build(respondable_class, extra_view_data = {}, status = nil) ⇒ Object
12 13 14 15 16 17 18 19 |
# File 'lib/aldous/view_builder.rb', line 12 def build(respondable_class, extra_view_data = {}, status = nil) actual_status = status || extra_view_data[:status] extra_view_data_no_status = extra_view_data.reject{|k, v| k == :status} actual_extra_view_data = default_view_data.merge(extra_view_data_no_status) view_data_dto = Aldous::SimpleDto.new(actual_extra_view_data) respondable_class.new(actual_status, view_data_dto, view_context) end |