Commit Graph

2495 Commits

Author SHA1 Message Date
Mark Paluch
e6ac12fac5 After release cleanups.
See #2528
2022-02-18 10:49:01 +01:00
Mark Paluch
e4813bc1c2 Prepare next development iteration.
See #2528
2022-02-18 10:48:59 +01:00
Mark Paluch
57f8d4a3d1 Release version 2.6.2 (2021.1.2).
See #2528
2022-02-18 10:41:00 +01:00
Mark Paluch
bedf905051 Prepare 2.6.2 (2021.1.2).
See #2528
2022-02-18 10:40:39 +01:00
Mark Paluch
9e6576776a Clarify Javadoc for FallbackPageable in PageableHandlerMethodArgumentResolverSupport.
Closes #2551
2022-02-17 14:36:35 +01:00
Oliver Drotbohm
3ec40638e5 Simpler check to avoid primitive conversion in ConvertingPropertyAccessor.
We now use Spring's ClassUtils.isAssignable(…) directly. Unit tests to verify that conversion is skipped for primitive / boxed scenarios.

See #2546.
2022-02-17 14:36:35 +01:00
Christoph Strobl
e5e8e67e07 Update copyright year to 2022.
See: #2552
2022-02-17 12:44:16 +01:00
Greg L. Turnquist
73e6269533 Update CI properties.
See #2528
2022-02-14 14:39:47 -06:00
Mark Paluch
20f440afca Performance improvements in ReactiveWrappers and ConvertingPropertyAccessor.
We now cache whether types are reactive wrappers and bypass the ConversionService for assignable primitive values.

Closes #2546
2022-02-11 15:21:32 +01:00
Mark Paluch
f8e1491228 Upgrade to XMLBeam 1.4.22.
Closes #2545
2022-02-10 11:01:35 +01:00
Mark Paluch
8f7cf9cf2d Polishing.
Extract artifactory credentials into properties file.

See #2541
2022-02-04 09:57:56 +01:00
Mark Paluch
0de2d0545a Polishing.
Extract docker credentials into properties file.

See #2541
2022-02-02 10:36:43 +01:00
Greg L. Turnquist
853de50080 Externalize build properties.
See #2541.
2022-02-02 10:36:43 +01:00
Mark Paluch
e14c870e73 Refine PropertyReferenceException message.
Use single-quotes to indicate which elements belong to the underlying type and which are part of the textual message.

Closes #2395
2022-01-25 14:43:07 +01:00
Mark Paluch
65e72dc7d6 Refine Coroutine wording around when to use suspend in method declarations.
Closes #2503
2022-01-25 11:08:55 +01:00
Mark Paluch
d4dea42509 Document dynamic projections parameter detection.
Closes #2510
2022-01-25 09:50:41 +01:00
yelis913
16bbaf5886 Add missing verb to the error message.
Closes #2524
2022-01-17 11:15:27 +01:00
Christoph Strobl
f068af8b4a After release cleanups.
See #2494
2022-01-14 10:45:00 +01:00
Christoph Strobl
683f6f18c1 Prepare next development iteration.
See #2494
2022-01-14 10:44:57 +01:00
Christoph Strobl
2b001cf53c Release version 2.6.1 (2021.1.1).
See #2494
2022-01-14 10:28:56 +01:00
Christoph Strobl
43c0eb3834 Prepare 2.6.1 (2021.1.1).
See #2494
2022-01-14 10:28:25 +01:00
Mark Paluch
6dd0183b95 Fix spliterator size hint in CloseableIterator.spliterator().
We now report -1 as size to avoid zero-size results for count() or toList() operators.

Closes #2519
2022-01-03 13:50:08 +01:00
heowc
a21d59614f Add @Nullable to ParametersParameterAccessor.getValue().
Add missing Override and Nullable annotations. Update Javadoc to mention correct return value.

Closes #2506
2021-12-13 10:53:54 +01:00
Mark Paluch
8a7520091d Polishing.
Add missing override annotations.

See #2508
2021-12-09 11:23:00 +01:00
Mark Paluch
536dae1766 Introduce configuration of class loader in SimpleTypeInformationMapper.
We now support configuration of the class loader in SimpleTypeInformationMapper to use a configured class loader instead of falling always back to the default/contextual class loader. In arrangements where the contextual class loader isn't able to provide access to the desired classes (e.g. parallel Streams, general Fork/Join Thread usage) the contextual class loader may not have access to the entity types. By implementing BeanClassLoaderAware, we can now propagate a configured class loader.

Closes #2508
2021-12-09 11:22:59 +01:00
Mark Paluch
088ccc4df3 Fix argument expansion in RepositoryFactorySupport logging.
Closes #2502
2021-12-07 09:33:02 +01:00
Mark Paluch
3be7b016b0 Migrate off SLF4J to Spring JCL.
Closes #2496
2021-11-16 10:49:05 +01:00
Mark Paluch
639c2c030f Update build trigger to use branch build.
See #2423
2021-11-12 14:28:38 +01:00
Jens Schauder
d8f2b82860 After release cleanups.
See #2484
2021-11-12 11:00:06 +01:00
Jens Schauder
ee713a4a6c Prepare next development iteration.
See #2484
2021-11-12 11:00:03 +01:00
Jens Schauder
ba84e875ff Release version 2.6 GA (2021.1.0).
See #2484
2021-11-12 10:49:36 +01:00
Jens Schauder
153108a3af Prepare 2.6 GA (2021.1.0).
See #2484
2021-11-12 10:49:15 +01:00
Mark Paluch
55b83dfa83 Refine documentation for PageableExecutionUtils.
Closes #2492
2021-11-09 14:48:42 +01:00
Oliver Drotbohm
c866b42025 Polishing.
A few further tweaks: ClassTypeInformation now never unwraps the user type to consistently work with the type originally presented in the lookup. That allows us to get rid of the custom equals(…)/hashCode() methods and removes the need to deal with original and user type in the same CTI instance.

The augmented caching of PersistentEntities in AbstractMappingContext now primarily happens in doAddPersistentEntity(…). We still need to implement a cache manipulation for the case that a user type has caused the creation of a PersistentEntity first and we see a lookup for the proxy type later. Before actually processing the TypeInformation we now try to lookup an already existing PersistentEntity for the user type and augment the cache if one was found.

See #2485
Original pull request: #2486.
2021-10-27 12:19:15 +02:00
Mark Paluch
ac9d11638c Polishing.
Remove isProxyTypeInformation from TypeInformation. Use computeIfAbsent to fall back to user type information when attempting to add a entity to the MappingContext.

See #2485
Original pull request: #2486.
2021-10-27 09:19:36 +02:00
Christoph Strobl
c30f3fc8af Create PersistentEntities only for user class in case of proxy instance.
This commit makes sure to only create a PersistentEntity for an actual user type. Therefore ClassTypeInformation now considers the given type and not only the user one for both equals and hashcode. This makes sure we can distinguish TypeInformation for a proxy from the one of a user class.
The AbstractMapping context will take care of unpacking proxied types and registering the created entity for both the user as well as the proxy type information.
Prior to this commit build time generated proxy instances would have been able to pollute the context depending on the order they had been served by the initial entity set.

Closes #2485
Original pull request: #2486.
2021-10-27 09:19:36 +02:00
Mark Paluch
69397a11b2 Polishing.
Reduce test element visibility, remove unused constant.

See #2472
2021-10-19 14:31:20 +02:00
Mark Paluch
7c1886201c Consider nested property paths containing a number.
PropertyPath now considers nested property paths (userLastname2 -> user.lastname2) that contain or end with a number.

Closes #2472
2021-10-19 14:31:20 +02:00
Mark Paluch
96ad5d7fb0 After release cleanups.
See #2462
2021-10-18 13:55:41 +02:00
Mark Paluch
99e55bf6cf Prepare next development iteration.
See #2462
2021-10-18 13:55:38 +02:00
Mark Paluch
51b2723882 Release version 2.6 RC1 (2021.1.0).
See #2462
2021-10-18 13:48:13 +02:00
Mark Paluch
0902ec0858 Prepare 2.6 RC1 (2021.1.0).
See #2462
2021-10-18 13:47:46 +02:00
alikilickaya
dd8a8083a5 Fix Javadoc in QueryByExampleExecutor.
Closes #2480
2021-10-13 14:16:35 +02:00
Pavel Gnusin
c383024312 Look up bean merged bean definitions in Repositories.
We now look up bean definitions for repositories using BeanFactory.getMergedBeanDefinition(…) to consider parent-child relationships across application contexts.

As we iterate through bean definitions considering ancestors we need to allow parent bean definitions. Previously, we obtained the bean definition from the child context and since the bean was inherited from the parent, the child context cannot provide a bean definition.

Closes #2383
Original pull request: #2384.
2021-10-12 09:38:54 +02:00
Mark Paluch
0cbc344483 Upgrade to Maven Wrapper 3.8.3.
See #2478
2021-10-11 14:30:25 +02:00
Mark Paluch
4e528a590a Allow reuse of ProjectionFactory from RepositoryFactorySupport.
Closes #2441
2021-10-11 11:06:52 +02:00
Mark Paluch
511181193e Add FluentQuery support to QueryByExampleExecutor and ReactiveQueryByExampleExecutor.
FluentQuery allows extending a query specification initially defined by a Example probe or a Querydsl Predicate and fetching the actual result through a functional programming model:

interface PersonRepository extends QuerydslPredicateExecutor<Person> {
  <S extends T, R> R findBy(Predicate predicate, Function<FluentQuery.FetchableFluentQuery<S>, R> queryFunction);
}

PersonRepository repo = …;

List<PersonProjection> result = repo.findBy(QPerson.person.name.eq("Walter"), q -> q.sort(Sort.by("lastname")).as(PersonProjection.class).all());

Closes: #2228
Original pull request: #2421.
2021-10-08 09:17:38 +02:00
Mark Paluch
f1f08933da Polishing.
Add since and author tags. Add ticket references to tests. Reformat code.

See #2471
2021-10-06 10:13:00 +02:00
hantsy
d18275770c Add Smallrye Mutiny support.
Closes #2471
2021-10-06 09:55:20 +02:00
Mark Paluch
03de5995c7 Document restrictions of simple base-repository method overrides in regard to projections.
Closes #2473
2021-10-05 11:35:52 +02:00