On Sun, Apr 5, 2009 at 7:12 PM, Rickard Öberg <[email protected]> wrote:
> Niclas Hedhman wrote:
>>
>> So, I am not that convinced of the "merge"-talks either.
>>
>> In fact, I am getting more and more into the notion that "mutations"
>> should be placed in stand-alone processes, in a such a way that they
>> are queueable and re-executable (idempotent).
>
> With the basic operations being setProperty(value), setAssociation(ref),
> addManyAssociation(idx, ref) and removeManyAssociation(ref), I think they
> will be idempotent. set are trivially idempotent, addMA is also, since the
> association is defined with set semantics, and removeMA is also idempotent
> (removeManyAssociation(idx) would not be).

Perhaps I wasn't clear enough.

My thinking is like this;
The 'mutation process' is the algorithm that covers everything that
encapsulates the change. I.e. instead of "Change C.Property1 to 4" it
is "Take A.Property3, add B.Property4*2, and set the result in
C.Property1". It suits the UnitOfWork thinking quite well, but I have
a GutFeeling UoW in Qi4j is 'too flexible' and will allow people to
f**k up.

And to make something like that work, I think one needs to really go
deep into the model and possibly challenge the obvious, since it is
somewhat against our way of thinking, where everything is
'transactional'.


Cheers
-- 
Niclas Hedhman, Software Developer
http://www.qi4j.org - New Energy for Java

I  live here; http://tinyurl.com/2qq9er
I  work here; http://tinyurl.com/2ymelc
I relax here; http://tinyurl.com/2cgsug

_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev

Reply via email to