Adds LegacyMessageImporterEligibility which checks eligibility of importing and returns a status
Adds LegacyMessageImporter which handles the importing in a safe way, failed messages get logged and counted. Exposes progress information for the UI.
Adds LegacyMessageImporterWindow which checks eligibility on startup, notifies the user and shows them current status.
TODO:
Add button to database settings page
UI needs to be tidied up, it's very bare bones and hardly functional currently
Strings into language resources? (maybe not since this is temporary)
Canceling the ongoing import job should ask the thread to stop (using some condition variable) and wait for the thread to return (probably using another condition variable)
Manual testing
Does running the migration twice add new messages?
LegacyMessageImporterEligibility
which checks eligibility of importing and returns a statusLegacyMessageImporter
which handles the importing in a safe way, failed messages get logged and counted. Exposes progress information for the UI.LegacyMessageImporterWindow
which checks eligibility on startup, notifies the user and shows them current status.TODO: