Exemplo n.º 1
0
def save_file(file: io.BufferedWriter):
    """Save file without closing it

    Args:
        file (:obj:`io.BufferedWriter`): A file-like object
    """
    file.flush()
    os.fsync(file.fileno())
    file.seek(0)
Exemplo n.º 2
0
def export_stream(model, **kwargs):
    stream = BufferedWriter()
    if not isinstance(model, Course):
        raise NotImplementedError(
            'cannot export anything else than a course model ({} provided)'.
            format(model.__class__.__name_))

    with zipfile.zipfile(stream) as zfile:
        zfile.write(export_meta(model), IMSCC_MANIFEST_FILENAME)
        file_output(model, zfile)
        qtis = course_xmlqti_builder(model)  # we assume it is a course model
        discussions = course_xmlqti_builder(model)
        stream.seek(0)
    return stream