[
http://issues.ops4j.org/browse/QI-209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14013#action_14013
]
Rickard Öberg commented on QI-209:
----------------------------------
I suggest that we close this, considering the new EventSourcing library. There
is still room to create a Command handling library, but that should be done
separately.
> Library for Command/Event support
> ---------------------------------
>
> Key: QI-209
> URL: http://issues.ops4j.org/browse/QI-209
> Project: Qi4j
> Issue Type: New Feature
> Reporter: Niclas Hedhman
> Assignee: Rickard Öberg
> Fix For: 1.4
>
>
> We should create a library to support a Commond/Event pattern, where commands
> (methods in interfaces) triggers events which are recorded and can be played
> back later in time.
> The suggested solution is basically;
> If a method is marked @Command, then the CommandQueueSideEffect is attached,
> and will pass the invoked method to a CommandService, which will persist the
> commands and allow the commands to be replayed later. This is all optional,
> as Command playback has the disadvantage of not recreating the same UUIDs.
> The typical mixin then goes on and implements the "Command" in a regular
> fashion, and typically calls a number of methods on private mixins. And if
> those are marked with @Event, the EventQueueConcern is attached, which will
> (if in recording mode, done with ThreadLocal on EventQueueService) forward
> the events to the EventService, which in turn will persist the events.
> Upon startup, it is possible to tell the EventQueueService that 'playback' is
> wanted. The EventQueueService will then locate each of the entities, and
> invoke the methods on the @Event methods as previously.
> The Events and Commands should be saved in a JSON format in a store optimized
> for "adding" and "locate+enumerate" operations.
> This will allow the domain model to rebuild the snapshot view from scratch at
> any point in time.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.ops4j.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev