In the preceding week, I was basically trying to study sync2, how it works and technically understanding its codebase. At the beginning of this week, I finalized on the study case, roughly made a design model for the MergePatientData module. I also came up with a number of properties the project must portray ie:-
- Serialisation and Encryption(Cryptography):
Resource data will be serialized to JSON and stored in a file, which will be encrypted to a 'data.mpd' file. This can reversely be decrypted by the module.
The module should be in position to retrieve/save data from the OpenMRS context after-all the module merges data from one OpenMRS instance to another.
Like in the sync2 module, Auditing is required to keep track of what really happened during a transfer process of data.
- Configuration and Validation:
We should configure which type of data is required to be merged.
Late this week, I started with the coding phase. I'm writing code basing on the design I came up with.
Work done so far.
- Resource domain:
I wrote code for almost all intended Resources .
- Implemented a Service layer for some Resources like PatietResourceService .. However, more work is still required here.
- I came up with a Repository(MergeAbleBatchRepo) that can store all Resources intended to be shared in a format that it could be easy to serialize.
- Lots work has been done. (check it out)