Commit Graph

663 Commits

Author SHA1 Message Date
Mark Paluch
7a933d8282 DATAREST-1473 - Release version 3.1.16 (Lovelace SR16). 2020-02-26 11:11:48 +01:00
Thomas Mrozinski
66a2b9e016 DATAREST-1068 - Resize array during merge.
When merging new data into a PersistentEntity, JsonNodes of array types were deserialized into immutable Lists, but the list is later mutated if the source and target arrays are of different sizes. This commit ensures that an array is deserialized into a mutable list.

Original pull request: #371.
2020-02-26 10:09:44 +01:00
Mark Paluch
0ee18afbaa DATAREST-1461 - Prepare next development iteration. 2020-01-15 10:35:38 +01:00
Mark Paluch
0ac986aab4 DATAREST-1461 - Release version 3.1.15 (Lovelace SR15). 2020-01-15 10:25:22 +01:00
Mark Paluch
8ce15726b4 DATAREST-1467 - Update copyright years to 2020. 2020-01-07 09:03:07 +01:00
Jens Schauder
cbb7c546df DATAREST-1455 - Prepare next development iteration. 2019-12-04 12:03:51 +01:00
Jens Schauder
07b5c16f14 DATAREST-1455 - Release version 3.1.14 (Lovelace SR14). 2019-12-04 11:42:04 +01:00
Mark Paluch
ec5642fbce DATAREST-1450 - Prepare next development iteration. 2019-11-18 12:10:52 +01:00
Mark Paluch
8247b21f91 DATAREST-1450 - Release version 3.1.13 (Lovelace SR13). 2019-11-18 12:01:05 +01:00
Christoph Strobl
828a8e6e15 DATAREST-1429 - Prepare next development iteration. 2019-11-04 10:26:35 +01:00
Christoph Strobl
0508541eef DATAREST-1429 - Release version 3.1.12 (Lovelace SR12). 2019-11-04 09:29:51 +01:00
Oliver Drotbohm
e7c657e3cb DATAREST-1440 - Revisited removal of fields in incoming payloads.
We now only remove fields from the payload in case there's no @JsonAnySetter on the target entity.
2019-11-04 09:11:54 +01:00
Mark Paluch
5367285cd6 DATAREST-1418 - Prepare next development iteration. 2019-09-30 11:15:25 +02:00
Mark Paluch
97ec41aefa DATAREST-1418 - Release version 3.1.11 (Lovelace SR11). 2019-09-30 11:04:23 +02:00
Oliver Drotbohm
77ab524129 DATAREST-1427 - Fixed handling of unpaged Pageable values. 2019-09-25 14:27:16 +02:00
Greg Turnquist
6cc485a9c1 DATAREST-1421 - Polishing. 2019-08-08 11:00:28 -05:00
Greg Turnquist
193d00c565 DATAREST-1421 - Deprecate ALPS_JSON and ALPS_JSON_VALUE.
Instead, use Spring HATEAOS's MediaTypes.ALPS_JSON and ALPS_JSON_VALUE.
2019-08-08 11:00:12 -05:00
Mark Paluch
23504c0a3e DATAREST-1395 - Prepare next development iteration. 2019-08-05 11:33:31 +02:00
Mark Paluch
e257ae5169 DATAREST-1395 - Release version 3.1.10 (Lovelace SR10). 2019-08-05 11:21:19 +02:00
Oliver Drotbohm
205bde8a7d DATAREST-1393 - Introduce workaround for Jackson property customization bug.
Deserializer customizations for related resources (deserializing an instance from a URI) are not applied to the creator properties Jackson uses to create an entity instance in the first place (see [0] for details). We work around this now by tweaking the property instances used for that in their origin ValueInstantiator via reflection until the bug gets fixed.

[0] https://github.com/FasterXML/jackson-databind/issues/2367
2019-06-25 16:00:30 +02:00
Oliver Drotbohm
37b25008b0 DATAREST-1397 - Polishing.
Removed the redeclaration of hasCorsConfigurationSource(…) in RepositoryRestHandlerMapping as it already inherits the one from BasePathAwareRestHandlerMapping.

Removed @Override on BasePathAwareRestHandlerMapping.hasCorsConfigurationSource(…) as we need to compile against Spring 5.1, which doesn't expose the method. Downgrades from Spring HATEOAS 1.0 API usage in tests.
2019-06-21 15:39:56 +02:00
Mark Paluch
4e586495f4 DATAREST-1397 - Adapt to CORS changes in AbstractHandlerMapping.
We now enable CORS handling for all requests by overriding the newly introduced hasCorsConfigurationSource method. We cannot detect CORS configuration handling solely on the handler but require path headers to resolve repository interface mappings.
2019-06-21 15:23:42 +02:00
Christoph Strobl
bf3929e35c DATAREST-1378 - Prepare next development iteration. 2019-06-14 13:14:50 +02:00
Christoph Strobl
4291209067 DATAREST-1378 - Release version 3.1.9 (Lovelace SR9). 2019-06-14 12:39:34 +02:00
Oliver Drotbohm
bf8e062d37 DATAREST-1387 - DelegatingHandlerMapping now handles HttpMediaTypeNotSupportedException. 2019-06-05 23:49:15 +02:00
Mark Paluch
8acd867ba0 DATAREST-1351 - URL Cleanup. 2019-06-05 11:31:09 +02:00
Oliver Drotbohm
e5018e003c DATAREST-1382 - Avoid to call BackendIdConverter if no id used for the request mapping.
Contrary to what's stated in the Javadoc of BackendIdConverter, BackendIdConverterHandlerMethodArgumentResolver now skips the invocation of ….fromRequestId(…) if no identifier path variable is found for the mapping of the method invoked.
2019-06-04 23:46:19 +02:00
Oliver Drotbohm
cf18d6aff7 DATAREST-1381 - Polishing. 2019-06-04 23:39:41 +02:00
Oliver Drotbohm
f3b1d92c22 DATAREST-1381 - Improve documentation around @RepositoryRestController. 2019-06-04 23:39:39 +02:00
Oliver Drotbohm
a5308f193b DATAREST-1383 - Polishing.
Avoid repeated lookups of PersistentPropertyAccessor in DomainObjectReader for PATCH requests. Formatting.
2019-05-28 17:29:39 +02:00
Oliver Drotbohm
c616c53905 DATAREST-1383 - PATCH requests now skip application of values for backend read-only properties.
MappedProperties now immediately drops non-writable properties when created for deserialization. Previously those properties would have to be annotated with @JsonProperty(access = Access.READ_ONLY) explicitly to avoid them being considered.
2019-05-28 17:29:38 +02:00
Mark Paluch
43abfa7617 DATAREST-1374 - Prepare next development iteration. 2019-05-13 14:58:45 +02:00
Mark Paluch
f8ff5e7593 DATAREST-1374 - Release version 3.1.8 (Lovelace SR8). 2019-05-13 13:25:53 +02:00
Oliver Drotbohm
81d438d74b DATAREST-1360 - Prepare next development iteration. 2019-05-10 12:55:58 +02:00
Oliver Drotbohm
e38af5c228 DATAREST-1360 - Release version 3.1.7 (Lovelace SR7). 2019-05-10 12:18:52 +02:00
Oliver Drotbohm
541d62007a DATAREST-1344 - Prepare next development iteration. 2019-04-01 20:55:12 +02:00
Oliver Drotbohm
daaff4ade6 DATAREST-1344 - Release version 3.1.6 (Lovelace SR6). 2019-04-01 20:04:13 +02:00
Spring Operator
ff768baccc DATAREST-1351 - 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 396 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0.html with 1 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0.html ([https](https://www.apache.org/licenses/LICENSE-2.0.html) result 200).

Original Pull Request: #335
2019-03-22 10:26:37 +01:00
Oliver Drotbohm
e363bc3fff DATAREST-1354 - Polishing. 2019-03-20 17:24:51 +01:00
Oliver Drotbohm
0e071a3afc DATAREST-1354 - Avoid exceptions for missing enum value translations.
We now use a dedicated implementation of MessageSourceResolvable to avoid missing enum value translations actually causing exceptions. That also allows us to defer the calculation of the default (potentially translated in a default way).
2019-03-20 17:24:47 +01:00
Spring Operator
725e868563 DATAREST-1351 - 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 13 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).
* http://www.pivotal.io with 2 occurrences migrated to:
  https://www.pivotal.io ([https](https://www.pivotal.io) result 301).

# Ignored
These URLs were intentionally ignored.

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

Original pull request: #312
2019-03-18 11:46:41 -05:00
Oliver Drotbohm
2d76187ae0 DATAREST-1338 - JsonPatch handling is now able to traverse maps.
We're now able to correctly identify Map keys within JsonPatch paths so that e.g. people/Dave/name properly translates into a people['Dave'].name SpEL expression.

Streamlined the design of SpelPath to avoid duplicate parsing and properly express the difference between typed and untyped paths in the type hierarchy. Slightly refactored the type hierarchy so that only methods that make sense in either untyped or typed state appear on the instance returned (getLeafType(Class) was exposed on TypedSpelPath before, which was confusing).
2019-03-05 13:55:10 +01:00
Mark Paluch
37ca7290cf DATAREST-1336 - Prepare next development iteration. 2019-02-13 11:24:21 +01:00
Mark Paluch
0467b62e43 DATAREST-1336 - Release version 3.1.5 (Lovelace SR5). 2019-02-13 09:56:39 +01:00
Oliver Drotbohm
fd59f323e3 DATAREST-1332 - Polishing. 2019-02-07 20:57:48 +01:00
Oliver Drotbohm
0249726507 DATAREST-1332 - Fixed regression in CORS request handling.
The lookup of the RequestMappingInfo in exposeEffectiveLookupPathKey(…) yields null for CORS preflight requests to resources that do not support OPTIONAL explicitly. We now guard against that to avoid a subsequent NullPointerException.
2019-02-07 20:57:45 +01:00
Mark Paluch
0cb313e5d0 DATAREST-1309 - Prepare next development iteration. 2019-01-10 13:48:11 +01:00
Mark Paluch
1e3050e41a DATAREST-1309 - Release version 3.1.4 (Lovelace SR4). 2019-01-10 12:35:56 +01:00
Oliver Drotbohm
a5ee6eaf05 DATAREST-1321 - Lookup types can now produce non-String reference values.
Previously we assumed lookup types to always result in String based values. We now loosen that constraint to also allow other scalar types, mostly targeting numeric types like long and integer.
2019-01-08 11:50:15 +01:00
Mark Paluch
2cdac36253 DATAREST-1330 - Update copyright years to 2019. 2019-01-02 12:17:33 +01:00