|[EMFStore] Updating the model on the server side based on clients modifications [message #1015831]
||Sun, 03 March 2013 07:31
| Junior Lekane Nimpa
Registered: September 2012
I am trying to develop a library for Ecore models. To persist the models, I use a graph database that is stored on a Rexster server. As far as I know, the server supports multiple user access. I am looking for efficient ways to update the models on the server side based on the clients modifications.
I watched the video on the homepage of EMFStore. It seems that the models on the
server are updated after each modification of clients. I would like to know how this is achieved.
I know that EMF supports notifications. So, I could register Adapter and listen to changes.But this could be ineffective in my opinion because notifications must first be sent over the network. In addition, a notification is sent for each modification on the model. When we know consider the fact that sereval users can work on the same model, reacting directly on the notification could lead to inconsistency.
Another possibility that I am considering is to override the hashCode()-method. After a client has committed his changes, I could compute the hash of all EObjects of a model and compared them with the hash of objects that are stored in the library. Based on the differences I could update the graph. One disadvantage of this approach is that I won't know which property of an object was changed. I would have to do a whole comparison. The last possibility is brute force, which I want to avoid.
Could someone (in the EMFStore team) tell me how I could update the server models?
Any idea is welcome.