Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Fixed ERRAI-334: Treat null fields correctly when cascading across singular or plural attributes

    • -5
    • +8
    ./jpa/client/local/ErraiEntityManager.java
  1. … 1 more file in changeset.
Moved Comparisons into the JPA module because it will become JPQL-specific

  1. … 1 more file in changeset.
Cleaning up framework package: moved Assert to api package because it's meant to be public API

    • -1
    • +1
    ./jpa/client/local/ErraiEntityType.java
    • -1
    • +1
    ./jpa/client/local/ErraiTypedQuery.java
    • -1
    • +1
    ./jpa/client/local/TypedQueryFactory.java
  1. … 36 more files in changeset.
Changed JPA storage format to use Key instances for entity references (not backward compatible)

This allows entity references to be used as a basis for comparison in JPQL queries. It also paves the

way for proper polymorphic references (since Key includes type information, and the old refs didn't)

This commit resolves ERRAI-418.

    • -2
    • +13
    ./jpa/client/local/ErraiEntityManager.java
    • -21
    • +27
    ./jpa/client/local/ErraiEntityType.java
    • -14
    • +44
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Corrected class documentation

    • -4
    • +7
    ./jpa/client/local/ErraiEntityManager.java
Switched Errai JPA's compile-time logging from println to slf4j

    • -6
    • +17
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 1 more file in changeset.
Implemented both the 2 and 3 arg variants of JPQL locate() function

Also switched to the H2 database from HSQLDB because H2 has a better-behaved TRIM() function

    • -2
    • +14
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 7 more files in changeset.
Implemented JPQL length() function

  1. … 2 more files in changeset.
Implemented JPQL trim() function with support for all optional params

    • -0
    • +10
    ./jpa/rebind/AstInorderTraversal.java
    • -0
    • +70
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 3 more files in changeset.
Implemented both variants of JPQL SUBSTRING()

    • -32
    • +61
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Implemented JPQL concat() function

  1. … 2 more files in changeset.
Added support for JPQL NOT IN

  1. … 2 more files in changeset.
Added support for JPQL IN <collection-valued-param>

    • -12
    • +5
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 3 more files in changeset.
Added support for JPQL IN <literal list>

    • -0
    • +23
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Added support for ESCAPE subclause of LIKE and NOT LIKE

  1. … 3 more files in changeset.
Added support for JPQL NOT LIKE

  1. … 2 more files in changeset.
Changed storage backend to tolerate containing instances of entity types that no longer exist

    • -6
    • +21
    ./jpa/client/local/ErraiMetamodel.java
Added support for JPQL LIKE

  1. … 3 more files in changeset.
Switched to window.localStorage (was window.sessionStorage for testing purposes)

  1. … 1 more file in changeset.
Implemented correct JPA semantics for cascade=PERSIST (was incorrectly being treated as MERGE before)

    • -3
    • +9
    ./jpa/client/local/ErraiEntityManager.java
  1. … 6 more files in changeset.
Fixed problem with parameters nested in functions (type info is not available from parse tree)

  1. … 2 more files in changeset.
Changed to aid troubleshooting: now the query name and text are logged when codegen fails.

    • -10
    • +22
    ./jpa/rebind/ErraiEntityManagerGenerator.java
Added support for JPQL upper() and lower() functions

    • -7
    • +16
    ./jpa/rebind/ErraiEntityManagerGenerator.java
    • -1
    • +18
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Pulled up attribute resolution to the comparator. Improves internal API, code readibility, and performance.

    • -23
    • +48
    ./jpa/rebind/TypedQueryFactoryGenerator.java
Changed ORDER BY comparisons to cope with null values

  1. … 3 more files in changeset.
Added support for multiple ORDER BY subclauses

    • -26
    • +50
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Added support for DESC modifier in ORDER BY clause; added explicit test for ORDER BY String

    • -3
    • +15
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Implemented ORDER BY for single values (test is for primitive ints, but should work for all primitives & Comparables)

    • -4
    • +14
    ./jpa/client/local/ErraiEntityType.java
    • -1
    • +18
    ./jpa/client/local/ErraiTypedQuery.java
    • -40
    • +153
    ./jpa/rebind/TypedQueryFactoryGenerator.java
  1. … 2 more files in changeset.
Factored out the fast-forward logic into the traverser so it can be reused by the ORDER BY generator

    • -4
    • +67
    ./jpa/rebind/AstInorderTraversal.java
    • -13
    • +6
    ./jpa/rebind/TypedQueryFactoryGenerator.java
Paving the way for an ORDER BY generator by fixing the API warts in the matcher generator.

Sadly, the generator code itself is now harder to understand. However, the generated code is easy enough

to follow, and it's going to be possible to add the ORDER BY stuff now.

    • -7
    • +0
    ./jpa/client/local/EntityJsonMatcher.java
    • -8
    • +2
    ./jpa/client/local/ErraiTypedQuery.java
    • -8
    • +16
    ./jpa/client/local/TypedQueryFactory.java
    • -54
    • +56
    ./jpa/rebind/ErraiEntityManagerGenerator.java
    • -34
    • +52
    ./jpa/rebind/TypedQueryFactoryGenerator.java