cayenne-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aristedes Maniatis <>
Subject Re: @SortWeight annotation
Date Thu, 24 Mar 2011 23:03:16 GMT
How pluggable is the sorter? Could a user specify a different sorter for one particular commit?
Or for a whole context? Or chain the sorters so that Ashwood is used first and then another
sorter is used to adjust the results under particular circumstances?


On 25/03/11 5:00 AM, Andrus Adamchik wrote:
> Here is an algorithm analysis task for graph-theory-minded folks. I came up with the
@SortWeight solution below for a very specific problem when commit operation ordering can
not be derived from the cross-entity relationships in the DataMap. Now I wondering how many
other cases raised on this list that are not addressed by the default AshwoodEntitySorter
can be solved by manually overriding entities ordering "weight"?
> Andrus
> On Mar 24, 2011, at 4:50 PM, Andrus Adamchik (JIRA) wrote:
>> cayenne-lifecycle: @SortWeight annotation
>> ------------------------------------------
>>                 Key: CAY-1553
>>                 URL:
>>             Project: Cayenne
>>          Issue Type: Task
>>          Components: Lifecycle Extensions
>>    Affects Versions: 3.1M2
>>            Reporter: Andrus Adamchik
>>            Assignee: Andrus Adamchik
>> Sometimes it is useful to manually override the operation ordering for some entities.
E.g. per CAY-1547 we support UuidRelationships, but saving an object with a UuidRelationship
to another object does not generate correct ordering. So we may want to override default ordering
for entities annotated with @UuidRelationship. E.g.:
>> @SortWeight(1.1)
>> @UuidRelationship("UUID")
>> class My extends _My {}
>> Note that this approach will not be able to address all shortcomings of a generic
AshwoodEntitySorter. It is somewhat of a hack. So it will be placed in cayenne-lifecycle and
treated as an "extension".
>> --
>> This message is automatically generated by JIRA.
>> For more information on JIRA, see:

Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A

View raw message