Hi,
last week at our Face2Face we had a discussion about sync, moving forward
on the client (will be a different thread) and on the server.
For the server-side we had a few different approaches:
1) AeroGear Sync-Server: Dan and Luke worked on the sync-server ([1]) as a
'long term' solution
The project contains two server implementations:
- RestServer implementation that uses a simple approach of rejecting
conflicts and delegating the responsibility to resolve conflicts to the
client.
- DiffServer Based on Google's Differential Synchonrization by Neil Fraser.
This server is WebSocket based.
2) Initial quick and simple solution based on JAX-RS and JPA:
- We have versioning in JPA (optimistic locking) - Use it (send 409 on
server and send right data)
-- Use JAX-RS ExceptionMapper for exceptions around the optimistic locking ?
- Client library will have helper methods for managing data
- Use push to send notifications that data changed?
- JAX-RS Annotation to send notifications?
I'd like to follow up on that, to see where things stand
Greetings,
Matthias
[1]
https://github.com/danbev/aerogear-sync-server/tree/differential-synchron...
--
Matthias Wessendorf
blog:
http://matthiaswessendorf.wordpress.com/
sessions:
http://www.slideshare.net/mwessendorf
twitter:
http://twitter.com/mwessendorf