Hello,
We have been working on
implementing atomfeed based on the protocol as outlined by
Rest In Practice (Chapter 7). We have built the server and client components to publish and consume events using Java. This is the same AtomFeed Implementation that Chris Ford had
spoken about a couple of months ago on the dev mailing list.
Key things in our implementation
- It is backed by database where one can store events. Currently it supports relational databases.
- It supports HTTP caching
- We have two strategies for paging the feeds (Time and Number based)
- We use the
ROME library for the underlying atom format.
Specification
We have created a "specification" based on the Rest In Practice book. It is heavily inspired by it but not a copy. (We have taken permission from the authors to do so)
We created the specification so that a feed implemented in one language/platform can be consumed by the client using another. The specification is available
here. This is on similar lines as what
google did withpubsubhubhub.
Isn't there an ATOMFEED Implementation in OpenMRS?
You're right. There is an implementation available already. However we chose to write one as we want the feed publisher to work in a clustered environment, wherein our only point of synchronisation is the database.
Do let us know what you think.
Thanks,
Varun Arbatti