cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrus Adamchik (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CAY-1784) Improving 'Property' class to handle a few extra common cases
Date Wed, 26 Dec 2012 08:08:12 GMT
Andrus Adamchik created CAY-1784:
------------------------------------

             Summary: Improving 'Property' class to handle a few extra common cases
                 Key: CAY-1784
                 URL: https://issues.apache.org/jira/browse/CAY-1784
             Project: Cayenne
          Issue Type: Improvement
          Components: Core Library
            Reporter: Andrus Adamchik
            Assignee: Andrus Adamchik
             Fix For: 3.2M1


This is feedback based on converting a large Java Cayenne project to the use of Property class
available per CAY-1724 :

1. SelectQuery.addPrefetch(String prefetchPath)  <- this API should support working with
properties.

2. DB paths, e.g. Orderings by DB PK column:   
    SelectQuery.addOrdering("db:" + InsiderUser.ID_PK_COLUMN, SortOrder.ASCENDING);
    Not sure yet how we can handle DB paths in general and PK in particular... 

3. ExpressionFactory.notLikeExp() is not implemented yet;

4. It will be good to have Property.in(List<?> list) method for convenience additionally
to Property.in(E... values)

5. Compiling path expression for the Ordering object is one of the performance bottlenecks
discovered in the aforementioned project. Caching ordering instances proved to be beneficial
for the performance-sensitive pieces of code. Property object should either cache the Ordering
or cache path Expression. I guess the later is a good approach in general, as a cached Expression
can quicken building of qualifiers as well as orderings. Also need to make sure that whatever
object we cache is immutable, so that callers can't modify it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message