Class: CanvasCc::CanvasCC::GradingStandardWriter
- Inherits:
-
Object
- Object
- CanvasCc::CanvasCC::GradingStandardWriter
- Defined in:
- lib/canvas_cc/canvas_cc/grading_standard_writer.rb
Constant Summary collapse
- GRADING_STANDARD_FILE =
'grading_standards.xml'
Instance Method Summary collapse
-
#initialize(work_dir, grading_standards) ⇒ GradingStandardWriter
constructor
A new instance of GradingStandardWriter.
- #write ⇒ Object
Constructor Details
#initialize(work_dir, grading_standards) ⇒ GradingStandardWriter
Returns a new instance of GradingStandardWriter.
5 6 7 8 |
# File 'lib/canvas_cc/canvas_cc/grading_standard_writer.rb', line 5 def initialize(work_dir, grading_standards) @work_dir = work_dir @grading_standards = grading_standards end |
Instance Method Details
#write ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/canvas_cc/canvas_cc/grading_standard_writer.rb', line 10 def write return if @grading_standards.empty? xml = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') do |xml| write_grading_standards(xml) do |xml| @grading_standards.each do |gs| xml.gradingStandard(identifier: gs.identifier, version: gs.version){ xml.title gs.title xml.data gs.data } end end end.to_xml File.open(File.join(@work_dir, CanvasCc::CanvasCC::CartridgeCreator::COURSE_SETTINGS_DIR, GRADING_STANDARD_FILE), 'w') { |f| f.write(xml) } end |