Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve parsing of course archive #1

Open
4 tasks
michaellzc opened this issue Jul 20, 2021 · 0 comments
Open
4 tasks

Improve parsing of course archive #1

michaellzc opened this issue Jul 20, 2021 · 0 comments

Comments

@michaellzc
Copy link
Contributor

michaellzc commented Jul 20, 2021

The current implementation has the following disadvantage

  • it assumes each component live in its own directory, learn more
  • R/W operations against course XML is not consistent, sometimes it is done on disk directly and it is done in memory. This could potentially lead to inconsistencies between the content on disk and in-memory

How to improve?

Implement some sort of data structure such that we can hold the entire course structure (XML and policies, excluding special assets, such as HTML and static assets).

TODO

  • Design the data structure to hold, XML, policies.
  • Implement a parser/deserializer to take a course archive as input (potentially empty input where it can be used to initialize an empty course structure)
  • Implement a serializer to transform the course structure into a course archive
  • Refactor codebases to make all operations against course structure are done in memory. We should avoid introducing breaking change to public API (methods without a _ prefix)
@michaellzc michaellzc changed the title Improve parsing of course archive XML Improve parsing of course archive Jul 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant