class Senkyoshi::Rule

Constants

CRITERIA_MAP

Attributes

content_id[R]
criteria_list[R]
id[R]
title[R]

Public Class Methods

new(resource_id) click to toggle source
Calls superclass method Senkyoshi::FileResource::new
# File lib/senkyoshi/models/rule.rb, line 33
def initialize(resource_id)
  super(resource_id)
  @criteria_list = []
end

Public Instance Methods

canvas_conversion(course, _resources) click to toggle source
# File lib/senkyoshi/models/rule.rb, line 54
def canvas_conversion(course, _resources)
  @criteria_list.each do |criteria|
    criteria.canvas_conversion(course, @content_id, _resources)
  end
  course
end
get_criteria_list(xml) click to toggle source
# File lib/senkyoshi/models/rule.rb, line 38
def get_criteria_list(xml)
  xml.children.select { |child_xml| !child_xml.blank? }.
    map do |child_xml|
      criteria = CRITERIA_MAP[child_xml.name.downcase.to_sym]
      criteria.from_xml(child_xml) if !criteria.nil?
    end.compact
end
iterate_xml(xml, _pre_data = nil) click to toggle source
# File lib/senkyoshi/models/rule.rb, line 46
def iterate_xml(xml, _pre_data = nil)
  @title = xml.xpath("./TITLE/@value").text
  @content_id = xml.xpath("./CONTENT_ID/@value").text
  @id = xml.xpath("./@id").text
  @criteria_list = get_criteria_list(xml.xpath("./CRITERIA_LIST"))
  self
end