class ViewModel::DecRrWrapper

Attributes

view_model[R]

Public Class Methods

new(xml_doc, schema_type) click to toggle source
# File lib/view_model/dec_rr_wrapper.rb, line 5
def initialize(xml_doc, schema_type)
  @view_model = build_view_model(xml_doc, schema_type)
  @summary = Presenter::DecRr::Summary.new(view_model)
  @recommendation_report = Presenter::DecRr::RecommendationReport.new(view_model)
end

Public Instance Methods

get_view_model() click to toggle source
# File lib/view_model/dec_rr_wrapper.rb, line 24
def get_view_model
  view_model
end
to_hash() click to toggle source
# File lib/view_model/dec_rr_wrapper.rb, line 15
def to_hash
  @summary.to_hash
end
to_report() click to toggle source

FIXME: Method name is not consistent for recommendation reports (see SAP/RdSAP)

# File lib/view_model/dec_rr_wrapper.rb, line 20
def to_report
  @recommendation_report.to_hash
end
type() click to toggle source
# File lib/view_model/dec_rr_wrapper.rb, line 11
def type
  :DEC_RR
end

Private Instance Methods

build_view_model(xml_doc, schema_type) click to toggle source
# File lib/view_model/dec_rr_wrapper.rb, line 30
def build_view_model(xml_doc, schema_type)
  case schema_type
  when :"CEPC-8.0.0"
    ViewModel::Cepc800::DecRr.new xml_doc
  when :"CEPC-NI-8.0.0"
    ViewModel::CepcNi800::DecRr.new xml_doc
  when :"CEPC-7.1"
    ViewModel::Cepc71::DecRr.new xml_doc
  when :"CEPC-7.0"
    ViewModel::Cepc70::DecRr.new xml_doc
  when :"CEPC-6.0"
    ViewModel::Cepc60::DecRr.new xml_doc
  when :"CEPC-5.1"
    ViewModel::Cepc51::DecRr.new xml_doc
  when :"CEPC-5.0"
    ViewModel::Cepc50::DecRr.new xml_doc
  when :"CEPC-4.0"
    ViewModel::Cepc40::DecRr.new xml_doc
  when :"CEPC-3.1"
    ViewModel::Cepc31::DecRr.new xml_doc
  else
    raise ArgumentError, "Unsupported schema type"
  end
end