Another week, another (minor) change of plans.. :)
Time for another update. Business more or less as usual, conference calls 2 times a week at least, and some chatting when needed. In general I feel it’s going a bit better now, and we’re actually implementing something that seems promising as a start. Spent some time last week implementing example serialization of both POJOs and the same objects served through Hibernate with CGLIB proxies to see which problems we would get with the different solutions for serialization. We took a look at a third option too, Simple which seemed to work quite well – except for lack of one requirement we had – some way of supporting several levels of serialization, e.g. deep and shallow. After a short discussion on Friday we decided to go with something based on Julie’s old code, e.g. a homegrown solution, and then rather change later if it doesn’t work out. The main disadvantages with that is that compared to some other solutions it’ll require more code to keep updated – and we won’t have built-in support for references and circular references. Most likely we’ll be able to avoid most pitfalls involving that though the way we plan to implement the serialization.
The second part I was going to work on last week, the REST based web service/transport layer is put on hold for now, we’ve got more important stuff to finish first, as we need *something* to work ASAP so that OpenMRS can be of use to a certain implementation somewhere in the world. Their requirements isn’t too complex, basically anything that can serialize the objects and merge several servers into one will be of great use. For the next week or two we aim at just having something to help out with that. The transport layer will be handled by a USB-stick so bandwidth and data size isn’t of much importance at this time. Committed a couple of minor updates/changes to the REST module only for now.
Current tasks involves making a journal/queue system for synchronization records, storing and keeping track state and data. Currently I’m implementing that as just another DAO/Service in the system. As soon as that is starting to look like something usable, I’ll also take a look at adding a screen to the Administration section of OpenMRS to track this visually..

Leave a Reply