Build weakly-typed Criteria API
-------------------------------

                 Key: OPENJPA-1014
                 URL: https://issues.apache.org/jira/browse/OPENJPA-1014
             Project: OpenJPA
          Issue Type: New Feature
          Components: jpa
            Reporter: Pinaki Poddar
            Assignee: Pinaki Poddar
             Fix For: 2.0.0-M1


JPA 2.0 has introduced specification for weakly-typed (I prefer relaxed-typed) 
dynamic query construction a.k.a untypesafe Criteria API. The earlier draft 
version of JPA described a relaxed-typed dynamic query which had already been 
implemented in OpenJPA. However, this API had a short life span and now no more 
endorsed by the spec. Given that the API has been reasonably  appreciated by 
the user community with its ease of use and we already have an implementation 
for it, that implementation is refactored into a OpenJPA specific 'Dynamic 
Query' API. The approach followed to implement this 'Dynamic Query' was 
completely decoupled from OpenJPA query infrastructure. The output was a pure 
JPQL string and that was the input to OpenJPA query. The approach had its 
advantage of a clean design at the cost of paying for parsing the JPQL query 
string again.

While it is possible to revert to that strategy for new relaxed-typed Criteria 
API but such strategy will force us to very dissimilar approaches (one for the 
strict-typed and the other for the relaxed-typed). Instead what I am proposing 
is to implement relaxed-type API on the basis of strongly-typed API 
implementation. Given that the strongly-typed API will require a meta-model, I 
feel we can devise a way for the relaxed-typed API to resolve as soon as 
possible the user input (String) to a proper type (Class). This will keep the 
implementation uniform.

 


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to