I'm fine with activating the toMany-setter in subclasses manually.

My motivation for introducing the delete parameter was, that your are
not able to the treat orphaned objects with a delete rule. Please
correct me, if its wrong. The delete rule is called only, if you trigger
.delete(). If you just remove your relationship: no entity will be
deleted. I guess this is the deletion question Michael Gentry was
talking about.

Am 25.01.2015 um 13:13 schrieb Andrus Adamchik:
> 
>> On Dec 27, 2014, at 6:07 PM, Johannes <jotpe....@gmail.com> wrote:
>>
>> Hello, I moved the method to CayenneDataObject. I hope the documentation
>> is more meaningfull now.
>>
>> The superclass.vm contains for every set-able relationship two method
>> which calls the setter in CayenneDataObject. Two methods because a
>> default value for deletion.
>>
>> Would be happy if anybody could review it again at
>> https://github.com/jotpe/cayenne/commit/d7251014c9d5cb9396a83cd6e2f16e64af27e4b5
>>
>> Regards Johannes
> 
> So we are talking about this pull request: 
> https://github.com/apache/cayenne/pull/61 . 
> 
> A question to Cayenne committers and community ... Proposed implementation 
> will require cleanup, optimization and very thorough testing. But aside from 
> that, do we think a collection setter is universally useful to a point that 
> all to-many relationships should expose it? 
> 
> Here is my feedback. I am ok with including a to-many collection "sync" 
> operation in CayenneDataObject, but I am against placing it in default .vm 
> template. This is based on the assumption that we are dealing with an 
> occasionally, but not universally useful operation. So e.g. if a user decides 
> he needs this op for Artist.paintings(..) collection, he would simply create 
> a method in a subclass:
> 
> Artist extends _Artist {
> 
>    void setPaintings(List<Paintings> ps) {
>        setToManyTarget(_Artist.PAINTINGS, ps, true);
>    }
> }
> 
> An ability to extend template behavior with custom per-object code is exactly 
> the reason we have sub/superclass separation.
> 
> Also I am tentatively -1 on the delete option. I would generally handle it 
> with a proper delete rule in the model. 
> 
> Thoughts?
> Andrus
> 
> 

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to