> On Mar 16, 2017, at 11:14 AM, Nikita Timofeev <ntimof...@objectstyle.com> 
> wrote:
> 
> On Mon, Mar 13, 2017 at 3:05 PM, Aristedes Maniatis <a...@maniatis.org> wrote:
>> On 13/3/17 9:53pm, Andrus Adamchik wrote:
>>> 
>>>> On Mar 13, 2017, at 1:46 PM, Aristedes Maniatis <a...@maniatis.org> wrote:
>>>> 
>>>> 
>>>> Just a wild thought, but would this syntax be helpful...
>>>> 
>>>> List<Object[]> result = ObjectSelect.query(Artist.class)
>>>>    .addColumns(Artist.PAINTING_COUNT)
>>>>    .select(context);
>>>> 
>>>> So then we are adding more columns to the existing DataObject query rather 
>>>> than having to define the DataObjects as properties in themselves. The 
>>>> syntax above might be simpler to understand and write.
>>> 
>>> So "addColumns" vs "columns"? IIRC we tried something similar with 
>>> orderings (override all orderings vs add to the existing orderings), and 
>>> that confused everybody (including me as the author), so that was undone 
>>> between the milestones.
>> 
>> 
>> Except in this case it is very different result since with this syntax you 
>> get the mixed columns/DataObject results and avoid needing to create 
>> properties for 'self' or some other confusing construct.
>> 
> 
> I think we can add Property<EntityType> SELF to default cgen
> templates, then everything will be pretty simple:
> 
>    ObjectSelect
>        .columnQuery(Artist.class, Artist.SELF, Artist.PAINTING_ARRAY.count())
>        .select(context);
> 

A good idea except for a possible naming conflict if a Java object has a 
persistent property called "self".

Andrus

Reply via email to