Build: #780 was successful Changes by Mark Paluch and Oliver Drotbohm <ogierke@pivotal.io>

Code commits

Plan Repository

  • Oliver Drotbohm <ogierke@pivotal.io>

    Oliver Drotbohm <ogierke@pivotal.io> dfc79193b4b1858c4be194af6e1a2627908120f0

    DATAJPA-1575 - Avoid the use of Optional in AbstractJpaQuery.getTypeToRead(…).

    • src/main/java/org/springframework/data/jpa/repository/query/AbstractJpaQuery.java (version dfc79193b4b1858c4be194af6e1a2627908120f0)
    • src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java (version dfc79193b4b1858c4be194af6e1a2627908120f0)
    • src/main/java/org/springframework/data/jpa/repository/query/NamedQuery.java (version dfc79193b4b1858c4be194af6e1a2627908120f0)
  • Mark Paluch

    Mark Paluch 10d7339799c8fd8776c0bdc54136ce10bfca3c89

    DATAJPA-1575 - Consistent use of JpaParametersParameterAccessor.
    We now reuse JpaParametersParameterAccessor as much as possible to avoid constant recreation. This change required several signature changes to accept JpaParametersParameterAccessor instead of raw Object[] values.

    • src/main/java/org/springframework/data/jpa/repository/query/AbstractJpaQuery.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/JpaParametersParameterAccessor.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/JpaQueryExecution.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/NamedQuery.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/ParameterBinder.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/ParameterMetadataProvider.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/PartTreeJpaQuery.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetter.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/main/java/org/springframework/data/jpa/repository/query/StoredProcedureJpaQuery.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/AbstractJpaQueryTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/JpaQueryExecutionUnitTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/NamedOrIndexedQueryParameterSetterUnitTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/NamedQueryUnitTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/PartTreeJpaQueryIntegrationTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
    • src/test/java/org/springframework/data/jpa/repository/query/SimpleJpaQueryUnitTests.java (version 10d7339799c8fd8776c0bdc54136ce10bfca3c89)
  • Mark Paluch

    Mark Paluch a01f71053d10d9dd488151e0d278d44821eeac8f

    DATAJPA-1575 - Conditionally register SurroundingTransactionDetectorMethodInterceptor.
    We now register SurroundingTransactionDetectorMethodInterceptor only for interfaces that return a Stream to detect a surrounding transaction.

    • src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java (version a01f71053d10d9dd488151e0d278d44821eeac8f)
  • Mark Paluch

    Mark Paluch 6e2032e7b615d63b43eb3b95f1f1b632925182c9

    DATAJPA-1575 - Limit CrudMethodMetadataPostProcessor to implementation methods.
    Also, merge CrudMethodMetadataPostProcessor with ExposeRepositoryInvocationInterceptor as exposing the MethodInvocation is only required for CrudMethodMetadata.

    • src/main/java/org/springframework/data/jpa/repository/support/CrudMethodMetadataPostProcessor.java (version 6e2032e7b615d63b43eb3b95f1f1b632925182c9)
    • src/test/java/org/springframework/data/jpa/repository/support/CrudMethodMetadataPopulatingMethodInterceptorUnitTests.java (version 6e2032e7b615d63b43eb3b95f1f1b632925182c9)
  • Mark Paluch

    Mark Paluch ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f

    DATAJPA-1575 - Reuse annotation lookup results and eliminate Stream usage.
    Evaluate JpaQuery-kind once instead for each invocation as the method signature isn't changing between invocations. Add early returns. Reuse cached annotation lookup results. Replace forEach calls with for-loops.

    • src/main/java/org/springframework/data/jpa/repository/query/AbstractJpaQuery.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/main/java/org/springframework/data/jpa/repository/query/JpaQueryMethod.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/main/java/org/springframework/data/jpa/repository/query/ParameterBinder.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/main/java/org/springframework/data/jpa/repository/query/ParameterBinderFactory.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/main/java/org/springframework/data/jpa/repository/query/PartTreeJpaQuery.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactory.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
    • src/test/java/org/springframework/data/jpa/repository/query/QueryParameterSetterFactoryUnitTests.java (version ab9a9bc0fc20d56d6c33a3e6d1fbe59740701c3f)
  • Mark Paluch

    Mark Paluch 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae

    DATAJPA-1575 - Introduce QueryMetadataCache.

    • src/main/java/org/springframework/data/jpa/repository/query/AbstractStringBasedJpaQuery.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/JpaQueryExecution.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/NamedQuery.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/ParameterBinder.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/PartTreeJpaQuery.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/QueryParameterSetter.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/query/StoredProcedureJpaQuery.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/main/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactory.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/test/java/org/springframework/data/jpa/repository/query/NamedOrIndexedQueryParameterSetterUnitTests.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)
    • src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java (version 74ff5b3a65b4a6d8df391be656c2bbb3373e3fae)