Module: AtomicAssessmentsImport
- Defined in:
- lib/atomic_assessments_import.rb,
lib/atomic_assessments_import/csv.rb,
lib/atomic_assessments_import/utils.rb,
lib/atomic_assessments_import/export.rb,
lib/atomic_assessments_import/writer.rb,
lib/atomic_assessments_import/version.rb,
lib/atomic_assessments_import/exam_soft.rb,
lib/atomic_assessments_import/csv/converter.rb,
lib/atomic_assessments_import/questions/essay.rb,
lib/atomic_assessments_import/exam_soft/chunker.rb,
lib/atomic_assessments_import/questions/matching.rb,
lib/atomic_assessments_import/questions/ordering.rb,
lib/atomic_assessments_import/questions/question.rb,
lib/atomic_assessments_import/exam_soft/converter.rb,
lib/atomic_assessments_import/exam_soft/extractor.rb,
lib/atomic_assessments_import/questions/short_answer.rb,
lib/atomic_assessments_import/questions/cloze_dropdown.rb,
lib/atomic_assessments_import/questions/multiple_choice.rb,
lib/atomic_assessments_import/exam_soft/chunker/strategy.rb,
lib/atomic_assessments_import/questions/fill_in_the_blank.rb,
lib/atomic_assessments_import/exam_soft/extractor/options_detector.rb,
lib/atomic_assessments_import/exam_soft/extractor/feedback_detector.rb,
lib/atomic_assessments_import/exam_soft/extractor/metadata_detector.rb,
lib/atomic_assessments_import/exam_soft/chunker/heading_split_strategy.rb,
lib/atomic_assessments_import/exam_soft/chunker/metadata_marker_strategy.rb,
lib/atomic_assessments_import/exam_soft/extractor/question_stem_detector.rb,
lib/atomic_assessments_import/exam_soft/extractor/question_type_detector.rb,
lib/atomic_assessments_import/exam_soft/extractor/correct_answer_detector.rb,
lib/atomic_assessments_import/exam_soft/chunker/numbered_question_strategy.rb,
lib/atomic_assessments_import/exam_soft/chunker/horizontal_rule_split_strategy.rb
Defined Under Namespace
Modules: CSV, ExamSoft, Export, Questions, Utils
Classes: Error, Writer
Constant Summary
collapse
- VERSION =
"0.5.0"
Class Method Summary
collapse
Class Method Details
.convert(path, import_from) ⇒ Object
20
21
22
23
24
25
26
27
|
# File 'lib/atomic_assessments_import.rb', line 20
def self.convert(path, import_from)
type = MimeMagic.by_path(path)&.type
converter_class = @converters[[type, import_from]]
raise "Unsupported file type: #{type} from #{import_from == nil ? "Unspecified Source" : import_from}. Make sure the file type conversion is available for the specified source." unless converter_class
converter_class.new(path).convert
end
|
46
47
48
49
50
51
52
|
# File 'lib/atomic_assessments_import.rb', line 46
def self.convert_to_aa_format(input_path, output_path, import_from: nil)
result = convert(input_path, import_from)
AtomicAssessmentsImport::Export.create(output_path, result)
{
errors: result[:errors],
}
end
|
.register_converter(mime_type, source, klass) ⇒ Object
15
16
17
18
|
# File 'lib/atomic_assessments_import.rb', line 15
def self.register_converter(mime_type, source, klass)
@converters ||= {}
@converters[[mime_type, source]] = klass
end
|