1113 Commits

Author SHA1 Message Date
Spring Operator
11f83aa45d DATACMNS-1500 - URL Cleanup.
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 517 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).

Original Pull Request: #368
2019-03-22 10:53:31 +01:00
Spring Operator
ecdaa70b37 DATACMNS- 1500 - URL Cleanup.
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://maven.apache.org/xsd/maven-4.0.0.xsd with 1 occurrences migrated to:
  https://maven.apache.org/xsd/maven-4.0.0.xsd ([https](https://maven.apache.org/xsd/maven-4.0.0.xsd) result 200).

# Ignored
These URLs were intentionally ignored.

* http://maven.apache.org/POM/4.0.0 with 2 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 1 occurrences

Original pull request: #346.
2019-03-18 17:26:07 +01:00
Oliver Gierke
21e449234e DATACMNS-776 - Made ProxyingHandlerMethodArgumentResolver to only support user types or annotated ones.
ProxyingHandlerMethodArgumentResolver is now more lenient when it comes to which types to support for proxying. As indicated in the ticket, we've been to aggressive opting in for all interfaces which - depending on the order of converter registrations - caused us interfering with other interface based resolutions (e.g. in Spring Mobile, Security etc.).

We now only aggressively kick in if either the type is not a Spring Framework or native Java one. This should leave user defined types still be accepted whereas the types we previously erroneously interfered with should now be ignored.
2017-01-23 11:59:25 +01:00
Oliver Gierke
cdbd072083 DATACMNS-957 - AuditingHandler now works with entities without an identifier.
Entities without an identifier previously an exception because the IsNewStrategyFactory wasn't able to determine a strategy even if there was no auditing to be applied in the first place.

We now eagerly check for auditability and skip the lookup for an IsNewStrategy completely in case that check returns false.

Related pull request: #189.
2017-01-19 09:50:06 +01:00
Oliver Gierke
d1d4931504 DATACMNS-932 - Updated changelog. 2016-12-21 19:35:19 +01:00
Oliver Gierke
39acefc706 DATACMNS-889 - Updated changelog. 2016-12-21 18:42:47 +01:00
Oliver Gierke
f9f9ba5919 DATACMNS-962 - Fixed typo in reference documentation. 2016-12-19 10:17:44 +01:00
Oliver Gierke
d74988d85e DATACMNS-958 - Use ExposeInvocationInterceptor.ADVISOR in RepositoryFactorySupport.
Its usage is recommended over using the instance as advice.
2016-12-14 13:59:44 +01:00
Oliver Gierke
bde629810c DATACMNS-956 - Ensure consistent use of ClassTypeInformation.from(…). 2016-12-12 17:09:50 +01:00
Oliver Gierke
9d08a9dbeb DATACMNS-934 - BasicPersistentEntity.addAssociation(…) drops null values now.
Previously a null value was added to the list of associations if it was handed to BasicaPersistentEntity.addAssociation(…). We now drop those null values and log a warning as it usually indicates a MappingContext implementation identifying a property as association but subsequently failing to look it up.
2016-12-05 17:02:51 +01:00
Oliver Gierke
7ceb761457 DATACMNS-943 - We prefer direct matches on repository query method overloads.
We now try to look up a target class method based on concrete name and parameter type before falling back on the more expensive type matches. This also eliminates the possibility of invalid method matches as described in the ticket.
2016-11-24 17:32:44 +01:00
Oliver Gierke
5cc7f7ab15 DATACMNS-933 - Updated changelog. 2016-11-23 13:52:33 +01:00
Oliver Gierke
faff263deb DATACMNS-924 - Updated changelog. 2016-11-03 18:56:38 +01:00
Oliver Gierke
bf97ca8c89 DATACMNS-929 - Fixed NullPointerException in PageableHandlerMethodArgumentResolver.
PageableHandlerMethodArgumentResolver.isFallbackPageable() now correctly guards against the fallback Pageable being null, a situation that's explicitly deemed valid in setFallbackPageable(…).
2016-11-01 18:04:29 +01:00
Oliver Gierke
44a292251d DATACMNS-914 - Updated changelog. 2016-09-29 14:42:01 +02:00
Oliver Gierke
b58e2876cb DATACMNS-922 - After release cleanups. 2016-09-29 10:41:57 +02:00
Spring Buildmaster
ccd61d7b9f DATACMNS-922 - Prepare next development iteration. 2016-09-29 07:48:55 +00:00
Spring Buildmaster
4ee81636c1 DATACMNS-922 - Release version 1.11.6 (Gosling SR6). 2016-09-29 07:48:54 +00:00
Oliver Gierke
358feb18bd DATACMNS-922 - Prepare 1.11.6 (Gosling SR6). 2016-09-29 09:33:54 +02:00
Oliver Gierke
bad869e50a DATACMNS-922 - Updated changelog. 2016-09-29 09:33:42 +02:00
Oliver Gierke
0cd6849087 DATACMNS-913 - After release cleanups. 2016-09-29 09:10:31 +02:00
Oliver Gierke
5d097db09e DATACMNS-923 - Removed obsolete code in DefaultRepositoryInformation.
The special case of an Iterable parameter doesn't have to be handled explicitly anymore so that we can simplify the type match check in DefaultRepositoryInformation.

Related ticket: DATACMNS-912.
2016-09-28 17:27:44 +02:00
Oliver Gierke
7ae5b66101 DATACMNS-917 - Query method execution for Maps now defaults null to an empty Map.
QueryExecutionResultHandler now explicitly handles null values for query methods returning Maps by returning an empty Map. This can be the case if a query is supposed to produce a Map (a single result) but doesn't actually yield any results at all.
2016-09-23 14:48:12 +02:00
Spring Buildmaster
e5008f94b0 DATACMNS-913 - Prepare next development iteration. 2016-09-20 13:42:10 +00:00
Spring Buildmaster
7502b3daee DATACMNS-913 - Release version 1.11.5.RELEASE. 2016-09-20 13:42:09 +00:00
Oliver Gierke
2f7ae42c6b DATACMNS-913 - Prepare 1.11.5 (Gosling SR5). 2016-09-20 15:29:18 +02:00
Oliver Gierke
d0a78cbce6 DATACMNS-913 - Updated changelog. 2016-09-20 15:28:57 +02:00
Oliver Gierke
722139354e DATACMNS-873 - Updated changelog. 2016-09-20 11:50:38 +02:00
Oliver Gierke
c826d245b1 DATACMNS-912 - Fixed generic method detection for overrides using generic methods.
We now correctly check the bounds of generic methods if we deal with a type variable found as method parameter. Introduced different code paths for type and method level generics so that the latter is explicitly checking all bounds available.
2016-09-20 00:53:17 +02:00
Oliver Gierke
e8dde13763 DATACMNS-909 - Mask getDecoratedClass() of Spring 4.3's DecoratingProxy.
The proxies created for projections now defensively mask getDecoratedClass(), a method declared on DecoratingProxy, an interface that JDK proxies on Spring 4.3 will implement.
2016-09-09 19:47:51 +02:00
Mark Paluch
09a2369386 DATACMNS-899 - Fix recursion in ParameterizedTypeInformation.getMapValueType().
Previously, calls to ParameterizedTypeInformation.getMapValueType() caused an infinite recursion when invoked on a type information that was not a map type. This lead to a StackOverflowError.

We now call the super method doGetMapValueType() instead of calling the entry super method getMapValueType() and return by that null in case the map value type is not resolvable.

Original pull request: #176.
2016-09-01 17:30:04 +02:00
Oleksandr Mandryk
ef6cb7eda0 DATACMNS-902 - Fix attribute name in example showing how to define a custom repository base class.
Original pull request: #173.
2016-08-29 16:23:35 +02:00
Kirill Gavrilov
f5e961cb6c DATACMNS-903 - Fix typo in reference documentation.
Original pull request: #174.
2016-08-29 16:17:06 +02:00
Oliver Gierke
8cf4aae982 DATACMNS-896 - Improved detection of type variable mappings in recursively nested generics.
If the same generic type was used on recursively nested generics declarations, like this:

class GenericType<T> {}

class Nested extends GenericType<String> {}

class Concrete extends GenericType<Nested> {}

our traversal of the generics discovered T bound to String in Nested and as that is extending GenericType as well, the T detected here is the same instance as the T within the map discovered for Concrete. As we previously added the nested types after we added the original entry, the nested discovery overwrote the more local one.

We now make sure the detected nested type variable mappings don't overwrite already existing ones.
2016-08-19 19:47:26 +02:00
Oliver Gierke
80f1854de2 DATACMNS-891 - Repository bean definition registration now exposes repository type in metadata.
We now set an explicit attribute on the BeanDefinition created for every repository factory to allow BeanFactoryPostProcessors to inspect those.
2016-08-09 17:02:45 +02:00
Oliver Gierke
f5319f7a47 DATACMNS-838 - Updated changelog. 2016-07-28 08:48:01 +02:00
Oliver Gierke
2a43062a34 DATACMNS-839 - Updated changelog. 2016-07-28 08:47:58 +02:00
Oliver Gierke
9fac20a91e DATACMNS-886 - Fix version ranges for Spring Framework in template.mf. 2016-07-25 19:34:06 +02:00
Oliver Gierke
eeccdc9bac DATACMNS-866 - Improved error message in invalid invocations of BasicPersistentEntity.getPropertyAccessor(…).
We now explicitly report the given object's type and the one expected in case of a mismatch when BasicPersistentEntity.getPropertyAccessor(…) is invoked.
2016-06-08 16:10:53 +02:00
Oliver Gierke
22ffd2421e DATACMNS-863 - Fixed parameter type lookup for wrapper types.
When repository parameters use wrapper types (e.g. Optional) the Parameter instance for that parameter now returns the component type.
2016-06-06 10:30:06 +02:00
Oliver Gierke
a3cc00d828 DATACMNS-743 - Optimizations in TypeDiscoverer getProperty(…) in case if invalid property names.
We now also cache a failed property lookup so that we can return null on a subsequent call for the same invalid property name right away and don't have to reattempt the lookup unnecessarily.
2016-06-01 18:34:32 +02:00
Oliver Gierke
ffb156cdab DATACMNS-831 - Polishing.
Formatting. Fixed copyright header and author. Added missing assertions in AbstractMappingContext.addPersistentEntity(…).

Original pull request: #157.
2016-05-31 18:58:58 +02:00
Mikael Klamra
6f44a9560e DATACMNS-831 - AbstractMappingContext.addPersistentEntity(…) now acquires necessary read lock.
The lookup for already available PersistentEntity instances now acquires a read lock to shield the execution from partially equipped PersistentEntity instances currently in creation from another thread.

Original pull request: #157.
2016-05-31 18:58:58 +02:00
Oliver Gierke
8445863fe5 DATACMNS-856, DATACMNS-685 - Made ToEntityConverter.matches(…) less offensive.
ToEntityConverter.matches(…) now doesn't throw an exception anymore as it might be picked up by classpath scanning an the exception previously thrown causing the entire conversion attempt to abort.

We're now rather inspecting the ToEntityConverter in case the target type is a repository managed one and the ToIdConverter otherwise.
2016-05-31 18:15:53 +02:00
Oliver Gierke
e93fd8a09c DATACMNS-854 - Polishing.
Simplified conditional expressions in DefaultRepositoryInformation. Reordered test method to reflect natural order of adding.

Original pull request: #162.
2016-05-24 19:06:05 +02:00
Terje Strand
7adb2f9936 DATACMNS-854 - Allow custom implementation of repository methods with generics.
Add additional check for detecting customized method where method contains generics. Overriding methods without generics already works, this patch simply makes the behavior consistent.

Original pull request: #162.
2016-05-24 19:06:05 +02:00
Oliver Gierke
eb3b15eea0 DATACMNS-858 - Polishing.
Some JavaDoc and formatting.
2016-05-21 12:03:18 +02:00
Oliver Gierke
f4d1f2d4b8 DATACMNS-858 - Fixed JavaDoc for CrudMethods.getDeleteMethod().
We're now correctly stating that we're preferring the delete method that takes the entity as argument over the one taking the id to match what's actually implemented.
2016-05-21 12:03:18 +02:00
Oliver Gierke
de8ae7c4b7 DATACMNS-855 - Fixed generic type lookup in SyntheticParamterizedType.
The translation of the list of actual type parameters into an array now uses the loop index correctly. Previously, it always used the first type parameter.
2016-05-13 11:32:14 +02:00
Oliver Gierke
f5471ed421 DATACMNS-855 - Prevent memory leak in SyntheticParameterizedType.
Added proper equals(…) and hashCode() methods to SyntheticParameterizedType to make sure instances created for the same type information and type parameters are considered equal.
2016-05-13 11:27:29 +02:00