Hey, Rickard,
For my part, I am very interested, but I have not had time to look
into this. Sorry!
I trust your judgement. :-)
If I can make the time, I'll take a look.
Keep up the great work! :-D
=David
On Jul 10, 2009, at 12:22 PM, Rickard Öberg wrote:
Hey,
Judging from the list admin there's about 150 people on this list.
Am I to interpret the lack of response to this that there's noone
interested in EventSourcing, or that noone has objections, or
that ... what?
If anyone has opinions on this stuff, PLEASE let us know!!
thanks, Rickard
Rickard Öberg wrote:
Hey,
One of the main points of having an EventSourced persistence
mechanism is so that several clients can access the list of events
that have been done through a UnitOfWork. I'd like to create a REST
resource for this, and I believe this has been discussed before even.
My suggestion:
create an Atom feed mounted on (e.g.):
/events
When accessed this generates an Atom feed where each entry is a
single UnitOfWork, which then consists of a number of events:
<feed>
<entry>
<id>cca5ee27-765a-47ee-a030-5d2303a4ca6b-0</id>
<content type="text">{entry content}</content>
</entry>
<entry>
<id>cca5ee27-765a-47ee-a030-5d2303a4ca6b-1</id>
<content type="text">{entry content}</content>
</entry>
<entry>
<id>cca5ee27-765a-47ee-a030-5d2303a4ca6b-2</id>
<content type="text">{entry content}</content>
</entry>
</feed>
The "id" is that of the unitOfWork. This feed can then be parsed by
clients which can perform operations based on it, such as updating
read-stores, indexes for searching, auditing, store the feed for
backups, etc.
Going to /events will get the latest list of changes, up to say 10
UoW's. To get older changes one would have to do:
/events?start={some older id}
This link is constructed by the server and is included in the
<feed> as a "previous" link (<link rel="previous" href="events?
start={id}"). These links can be followed by the client until the
first set of events is reached.
There are more issues to be discussed, such as the format of the
content (JSON or XML basically), but does the above seem to be on
the right track?
/Rickard
_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev
_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev