class Moodle2CC::CanvasCC::FileMetaWriter
Constants
- FILE_META_FILE
Public Class Methods
new(work_dir, *canvas_files)
click to toggle source
# File lib/moodle2cc/canvas_cc/file_meta_writer.rb, line 6 def initialize(work_dir, *canvas_files) @work_dir = work_dir @canvas_files = canvas_files end
Public Instance Methods
write()
click to toggle source
# File lib/moodle2cc/canvas_cc/file_meta_writer.rb, line 11 def write copy_files write_xml end
Private Instance Methods
copy_files()
click to toggle source
# File lib/moodle2cc/canvas_cc/file_meta_writer.rb, line 18 def copy_files @canvas_files.each do |canvas_file| FileUtils.mkdir_p(File.dirname(File.join(@work_dir, canvas_file.href))) FileUtils.cp(canvas_file.file_location, File.join(@work_dir, canvas_file.href)) end end
write_xml()
click to toggle source
# File lib/moodle2cc/canvas_cc/file_meta_writer.rb, line 26 def write_xml xml = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') do |xml| xml.fileMeta( 'xmlns' => 'http://canvas.instructure.com/xsd/cccv1p0', 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance', 'xsi:schemaLocation' => 'http://canvas.instructure.com/xsd/cccv1p0 http://canvas.instructure.com/xsd/cccv1p0.xsd' ) end.to_xml File.open(File.join(@work_dir, Moodle2CC::CanvasCC::CartridgeCreator::COURSE_SETTINGS_DIR, FILE_META_FILE), 'w') { |f| f.write(xml) } end