Commit Graph

800 Commits

Author SHA1 Message Date
Oliver Gierke
28f92cfa07 DATACMNS-624 - Re-activated Travis builds for spring4, spring41, spring41-next and querydsl-next.
Also activated building on the new container infrastructure to use artifact caching.

Removed JDK 6 and 7 builds as the build on these VMs will fail due to the Optional stub causing NoClassDefFoundErrors.
2015-01-05 18:54:29 +01:00
Oliver Gierke
b9916ab8b7 DATACMNS-616 - Fixed field value lookup for private fields in AnnotationDetectionFieldCallback.
We now make the field detected by the callback accessible so that the value lookup doesn't fail for private fields. Added a few more unit tests to verify behavior.
2014-12-17 17:25:28 +01:00
Oliver Gierke
49a00cb5ec DATACMNS-615 - PageImpl now rejects a total less than the amount of items given.
PageImpl now makes sure that the total given to the constructor is never less than then number of items given to make sure we do not mask broken count calculation by creating an actually invalid instance.

Related ticket: DATAMONGO-1120.
2014-12-16 12:41:58 +01:00
Oliver Gierke
6f4b26bf56 DATACMNS-611 - Improved cache lookups in RepositoryInterfaceAwareBeanPostProcessor.
Refactored predictBeanType(…) to only look up the predicted cached type once.

Related pull request: #108.
2014-12-08 17:55:19 +01:00
Oliver Gierke
71f1592200 DATACMNS-601 - Fixes for most of the SonarQube warnings. 2014-11-26 09:15:34 +01:00
Oliver Gierke
0f448d509c DATACMNS-594 - Fixed creation of type variable map to extend into detected bounds.
The initial setup of the type variable map now unfolds the detected types in the map to make sure we detect all type variables present in the current scope.

Added caching of component and map value TypeInformation instances to avoid repeated creation.
2014-11-14 16:35:23 +01:00
Oliver Gierke
ca377dc075 DATACMNS-590 - Fixed calculation of nested generics in ParentTypeAwareTypeInformation.
So far, the lookup of the type variable map was preferring the type variable maps detected on parent types in nested structures. This caused the concrete type variables in nested types not being considered correctly which caused the type resolution to fall back to the generic bounds.

We now accumulate the type variable maps to avoid having to lookup a certain map in the nesting hierarchy. The core fix is in ParentTypeAwareTypeInformation's constructor and mergeMaps(…) respectively. Simplified the handling of type variable maps and made proper use of generics throughout the class hierarchy.
2014-11-12 14:31:30 +01:00
Thomas Darimont
e02cecd6d0 DATACMNS-583 - DomainClassConverter returns input if given types are the same.
DomainClassConverter now returns input when the source type is identical to the target type. Previously we erroneously tried to convert the sourceType to the idType of the targetType's backing repository. As a side effect we also avoid performing some unnecessary converter hops.

Original pull request: #101.
2014-10-29 09:41:28 +01:00
Thomas Darimont
47e2c84bbc DATACMNS-577 - Improved JavaDoc on QueryDslPredicateExecutor.
Clarified return values if predicates don't match or return multiple results (for the findOne(…) method). Copied summary to the @return tag.

Original pull request: #96.
2014-10-08 06:49:16 +02:00
Thomas Darimont
494221064e DATACMNS-530 - Improve JavaDoc for RepositoryConfigurationSourceSupport.
Removed misleading JavaDoc.

Original pull request: #97.
2014-10-07 15:02:16 +02:00
Oliver Gierke
61dce8af0d DATACMNS-568 - After release cleanups. 2014-08-27 12:37:01 +02:00
Spring Buildmaster
55b7338c54 DATACMNS-568 - Prepare next development iteration. 2014-08-27 02:51:47 -07:00
Spring Buildmaster
783c3ef85c DATACMNS-568 - Release version 1.8.4.RELEASE (Dijkstra SR4). 2014-08-27 02:51:44 -07:00
Oliver Gierke
c3ad453eef DATACMNS-568 - Prepare 1.8.4.RELEASE (Dijkstra SR4). 2014-08-27 11:35:54 +02:00
Oliver Gierke
f1c668c5ca DATACMNS-568 - Updated changelog. 2014-08-27 11:28:04 +02:00
Oliver Gierke
0cd215e9b1 DATACMNS-561 - Updated changelog. 2014-08-27 07:11:22 +02:00
Thomas Darimont
8650b6943c DATACMNS-566 - Allow sorting by QueryDsl operator expressions.
Previously we only allowed to sort by QueryDsl path expressions. With this change we now also support ordering by operator expressions, e.g. yearMonth() on a date property.

Original pull request: #94.
2014-08-26 13:56:55 +02:00
Oliver Gierke
6daf7e2752 DATACMNS-562 - AbstractPersistentProperty doesn't consider maps and collections entities anymore.
The type detection for entity candidates of PersistentProperty instances now consistently handles collection types even if they're used als collection or map values.
2014-08-19 17:54:09 +02:00
Oliver Gierke
33698a7649 DATACMNS-556 - Make annotation validation in AnnotationBasedPersistentProperty more lenient.
Annotations used on both fields and accessors are now only rejected if they're Spring Data annotations (i.e. from the org.springframework.data namespace) and the configurations of these annotations differ.
2014-08-10 13:30:38 +02:00
Oliver Gierke
e62391f825 DATACMNS-558 - Some code cleanups according to the Sonar report. 2014-08-10 12:53:24 +02:00
Oliver Gierke
f98698c5b1 DATACMNS-549 - After release cleanups. 2014-07-28 12:24:56 +02:00
Spring Buildmaster
ff6ddc57a2 DATACMNS-549 - Prepare next development iteration. 2014-07-28 01:35:08 -07:00
Spring Buildmaster
11bd4c090f DATACMNS-549 - Release version 1.8.2.RELEASE (Dijkstra SR2). 2014-07-28 01:35:06 -07:00
Oliver Gierke
e27984e84c DATACMNS-549 - Prepare 1.8.2.RELEASE (Dijkstra SR2). 2014-07-28 10:21:56 +02:00
Oliver Gierke
98943833f8 DATACMNS-549 - Updated changelog. 2014-07-28 10:19:38 +02:00
Oliver Gierke
c65cbccbb4 DATACMNS-549 - Prepare version 1.8.2.RELEASE.
Upgraded to Spring HATEOAS 0.16.0.RELEASE.
2014-07-28 09:54:00 +02:00
Oliver Gierke
91e80f420a DATACMNS-536 - Updated changelog. 2014-07-25 06:12:25 +02:00
Oliver Gierke
f003461256 DATACMNS-547 - @TypeAlias is now @Persistent.
For @TypeAlias annotated types being picked up using entity scanning, the annotation is now @Persistent.

Related tickets: DATAMONGO-992.
2014-07-24 14:14:36 +02:00
Oliver Gierke
81751aa0f0 DATACMNS-546 - PropertyPath has better exception messages now.
PropertyPath now exposes the complete property named the resolution failed for in case it can't resolve a source String. It will expose the part of the Path from the deepest successful resolution result.

Changed the resolution algorithm to use a List instead of a Stack and a fresh instance of the former so that the nested recursion steps keep track of the correct resolution depths.
2014-07-21 18:11:00 +02:00
Oliver Gierke
31d36781f6 DATACMNS-544 - Indicate repository configuration has been active.
RepositoryConfigurationDelegate now registers the store-specific RepositoryConfigurationExtension as lazy-init BeanDefinition so that other parties can detect that definition.
2014-07-18 20:03:31 +02:00
Oliver Gierke
af32b38a2a DATACMNS-543 - Avoid duplicate repository bean registration in XML namespace.
We're now firing the component registration event manually in RepositoryBeanDefinitionParser as ParserContext.registerBeanComponent(…) registers the given BeanComponentDefinition with the registry. As we do that manually before this previously resulted in the BeanDefinition overriding the very same one and container warnings in turn.
2014-07-18 12:22:24 +02:00
Thomas Darimont
196d8ae883 DATACMNS-538 - Updated section on pagination in reference documentation.
Reworked section that contained outdated parameter names and examples.

Original pull request: #91.
2014-07-17 21:49:53 +02:00
Christoph Strobl
aa83c03542 DATACMNS-527 - Remove links to forum.spring.io.
Linked to spring-data tag on StackOverflow.

Original pull request: #90.
2014-07-09 20:45:12 +02:00
Oliver Gierke
57cf6482f3 DATACMNS-527 - After release cleanups. 2014-06-30 16:54:15 +02:00
Spring Buildmaster
c4f61bb9fc DATACMNS-527 - Prepare next development iteration. 2014-06-30 05:44:19 -07:00
Spring Buildmaster
a7c500bf60 DATACMNS-527 - Release version 1.8.1.RELEASE (Dijkstra SR1). 2014-06-30 05:44:17 -07:00
Oliver Gierke
bee15dd5b2 DATACMNS-527 - Prepare 1.8.1.RELEASE (Dijkstra SR1). 2014-06-30 14:37:45 +02:00
Oliver Gierke
e21b6d46ac DATACMNS-527 - Updated changelog. 2014-06-30 14:37:45 +02:00
Oliver Gierke
0b392758d8 DATACMNS-527 - Upgraded to Java 8 stub in correct version. 2014-06-30 14:36:15 +02:00
Oliver Gierke
b2f9529c2a DATACMNS-528 - Upgraded to Spring HATEOAS 0.14.0.RELEASE. 2014-06-30 14:05:40 +02:00
Oliver Gierke
700943bd82 DATACMNS-522 - Updated changelog. 2014-06-30 10:46:21 +02:00
Thomas Darimont
f1ff280790 DATACMNS-518 - Avoid potential infinite loops in PreferredConstructor.
We now synchronize the (seldom) writes to the isPropertyParameterCache HashMap in PreferredConstructor via a ReadWriteLock. We could as well have used a ConcurrentHashMap here without the need for manual locking but this would potentially waste memory for a mostly read-only data structure. We also anticipate potential multiple writes for the same property.

Original pull request: #86.
2014-06-26 14:08:37 +02:00
Oliver Gierke
760dfbdb78 DATACMNS-521 - Disabled querydsl-next profile in Travis build. 2014-06-12 16:20:31 +02:00
Oliver Gierke
218a820c95 DATACMNS-520 - Fixed @Param validation in Parameters.
Parameters erroneously rejected @Param annotated query method parameters that were preceded by a non-bindable type (like Pageable or Sort) as it checked for a 0 index of the parameter. We now manually keep an index in the check itself and have removed the Parameter.isFirst() method as it's not used anywhere else.
2014-06-12 16:00:05 +02:00
Oliver Gierke
558b9865ba DATACMNS-513 - PagedResourcesAssemblerArgumentResolver now correctly resolves mappings for sub-class invocations.
We're now using the newly introduced method on ControllerLinkBuilderFactory that takes both a type and a method to forward the method the invocation is happening on independently from the method being invoked.
2014-06-05 17:16:06 +02:00
Thomas Darimont
9ddf20f2e9 DATACMNS-514 - Fixed typo in RepositoryPopulator examples.
The property "location" should actually be "locations" since this attribute is read by org.springframework.data.repository.config.ResourceReaderRepositoryPopulatorBeanDefinitionParser.doParse(Element, BeanDefinitionBuilder).
2014-06-04 11:32:39 +02:00
Oliver Gierke
314aad7caa DATACMNS-511 - Improve equals(…) and hashCode() in TypeVariableTypeInformation.
The equals(…) and hashCode() methods of TypeVariableTypeInformation previously tried to evaluate the unresolved context of the type variable. This can cause issues in recursive type definitions as set up in the according test case. We now implement the methods based on the resolved type to makes sure we break the recursive lookup of PersistentEntity instances in AbstractMappingContext.

The erroneous lookup was actually caused by unresolved base types being added to the mapping context within the JPA project as the JPA meta-model also returns those types as managed types.

Related pull request: #84.
2014-05-28 15:40:44 +02:00
Oliver Gierke
8862a376e0 DATACMNS-507 - Prepare next development iteration. 2014-05-20 20:30:48 +02:00
Spring Buildmaster
403f4bb56e DATACMNS-507 - Release version 1.8.0.RELEASE. 2014-05-20 07:51:22 -07:00
Oliver Gierke
8050d9428d DATACMNS-507 - Prepare 1.8 GA. 2014-05-20 16:37:57 +02:00