186 Commits

Author SHA1 Message Date
Oliver Drotbohm
21ed68262f Properly handle associations in nested entities.
Nested entities that contain a reference to an aggregate root get a link to that attached to their representation. Previously, the creation of those links assumed that the reference is a materialized instance of the remote aggregate. That's now altered to be able to deal with associations, use identifiers directly or materialize to an intermediate aggregate instance to potentially use a custom lookup.
2021-04-07 20:07:53 +02:00
Mark Paluch
8e42a2a221 Prepare next development iteration.
See #1976
2021-03-31 17:24:04 +02:00
Mark Paluch
d77e5192d8 Release version 3.5 RC1 (2021.0.0).
See #1976
2021-03-31 17:05:09 +02:00
Oliver Drotbohm
17538c65d7 Enable rendering as HAL FORMS.
We're now registering an HttpMessageConverter to render requests for HAL FORMS using the HalFormsConfiguration present in the application.

We're currently not adding any affordances yet. The change solely enables user code to add affordances explicitly, e.g. via RepresentationModelProcessor implementations.

Fixes: #1991.
2021-03-25 18:01:54 +01:00
Mark Paluch
0f93b050ce Prepare next development iteration.
See #1986
2021-03-17 11:30:29 +01:00
Mark Paluch
54696d4d5f Release version 3.5 M5 (2021.0.0).
See #1986
2021-03-17 11:17:50 +01:00
Oliver Drotbohm
e9bc98a1e9 #1980 - RepositoryEntityLinks now overrides ….linkForItemResource(…). 2021-02-24 17:57:46 +01:00
Christoph Strobl
08ca20422d Prepare next development iteration.
See #1978
2021-02-18 11:35:21 +01:00
Christoph Strobl
d03e364294 Release version 3.5 M4 (2021.0.0).
See #1978
2021-02-18 11:25:13 +01:00
Christoph Strobl
d5d2659a24 Prepare next development iteration.
See #1954
2021-02-17 14:17:48 +01:00
Christoph Strobl
44b93173a7 Release version 3.5 M3 (2021.0.0).
See #1954
2021-02-17 14:00:09 +01:00
Oliver Drotbohm
9ee4c62b01 #1971 - Upgrade MongoDB tests to 4.2 drivers. 2021-02-16 16:46:21 +01:00
Christoph Strobl
6384110dab Prepare next development iteration.
See #1944
2021-01-13 15:46:58 +01:00
Christoph Strobl
e2523e35d0 Release version 3.5 M2 (2021.0.0).
See #1944
2021-01-13 15:34:04 +01:00
Mark Paluch
7afe7f1a9c Update copyright year to 2021.
Closes #1952
2021-01-12 11:45:16 +01:00
Mark Paluch
f58ea84c43 Upgrade to Servlet API 4.0.1.
We now build against a newer Servlet API version to align with Spring Framework.

Also, introduce a version property servlet.version for centralized version management.

Closes #1951
2021-01-11 08:58:58 +01:00
Mark Paluch
fba7b7bd55 DATAREST-1578 - Prepare next development iteration. 2020-12-09 15:32:17 +01:00
Mark Paluch
2b61b8640f DATAREST-1578 - Release version 3.5 M1 (2021.0.0). 2020-12-09 15:21:57 +01:00
Mark Paluch
c770f277b0 DATAREST-1587 - Remove Solr integration tests. 2020-12-09 15:17:42 +01:00
Oliver Drotbohm
38f2bc4598 DATAREST-1581 - Fixed CORS defaults to include all HTTP methods exposed by Spring Data REST.
The fix for DATAREST-1535 has changed the default allowed methods for CORS requests to a smaller set than we originally returned. This commit reinstantiates the default to be set to all HTTP methods, Spring Data repositories support by default.

Related tickets: DATAREST-1535.
2020-12-01 22:35:25 +01:00
Oliver Drotbohm
328ea26244 DATAREST-1542 - Remove dependency to Spring WebMVC from core module.
Finally remove the dependency to Spring WebMVC from Spring Data REST's core module. Removed previously deprecated methods and update test configuration applying customizations.

Related tickets: DATAREST-1543.
2020-11-30 13:55:52 +01:00
Mark Paluch
378a7d3971 DATAREST-1570 - Prepare next development iteration. 2020-10-28 16:10:22 +01:00
Mark Paluch
3a05cca9b6 DATAREST-1570 - Release version 3.4 GA (2020.0.0). 2020-10-28 15:46:57 +01:00
Oliver Drotbohm
f00451dc7e DATAREST-1213 - Polishing.
Simplified tests and domain code. Reinstantiated accidentally removed method in PersistentEntityResource.

Original pull request: #355.
2020-10-26 22:36:01 +01:00
Dario Seidl
055c4528e8 DATAREST-1213 - ETag creation now uses proxy target for projections.
Original pull request: #355.
2020-10-26 22:36:01 +01:00
Christoph Strobl
f301dcc0bc DATAREST-1562 - Prepare next development iteration. 2020-10-14 14:48:46 +02:00
Christoph Strobl
150ed4164e DATAREST-1562 - Release version 3.4 RC2 (2020.0.0). 2020-10-14 14:28:56 +02:00
Oliver Drotbohm
25cfb6ecb9 DATAREST-1567 - Polishing.
Tweaked test setups to work without the explicit component scanning.

Original pull request: #382.
2020-09-25 10:57:15 +02:00
Mark Paluch
0072676ab2 DATAREST-1554 - Prepare next development iteration. 2020-09-16 14:05:26 +02:00
Mark Paluch
8b2df69464 DATAREST-1554 - Release version 3.4 RC1 (2020.0.0). 2020-09-16 13:57:43 +02:00
Oliver Drotbohm
0392103371 DATAREST-1545 - Polishing. 2020-09-15 17:13:53 +02:00
Mark Paluch
5a57fafc2e DATAREST-1539 - Prepare next development iteration. 2020-08-12 12:00:21 +02:00
Mark Paluch
fe6192198a DATAREST-1539 - Release version 3.4 M2 (2020.0.0). 2020-08-12 11:52:06 +02:00
Oliver Drotbohm
bf401f7476 DATAREST-1553 - Removed deprecations introduced prior to 3.4.
Removed Java8PluginRegistry not in use anymore anyway. Same for RepositoryRestConfigurerAdapter. Deprecated legacy ResourceMappingUtils and its client code exposed in RepositoryRestConfiguration as it's also not considered anymore.
2020-08-11 17:44:36 +02:00
Oliver Drotbohm
b17fed5fa6 DATAREST-1523 - Delombok production sources.
Hacking.
2020-08-11 16:53:15 +02:00
Oliver Drotbohm
9f62237dd3 DATAREST-1543 - Deprecate RepositoryRestConfiguration.getCorsRegistry().
Slightly tweaked the configuration model to rather handle the CorsRegistry via RepositoryRestConfigurer.configureRepositoryRestConfiguration(…) rather than RepositoryRestConfiguration itself. That allows moving of Spring WebMVC as a dependency in the core module.

The original methods exposing access to the CorsRegistry are now still available in deprecated form to not break existing clients.

Follow-up ticket: DATAREST-1542.
2020-07-03 15:06:41 +02:00
Oliver Drotbohm
d7f36b1180 DATAREST-1540 - Improvements in HandlerMapping implementation for Spring 5.3.
We now use Spring's path prefix capabilities to apply Spring Data REST's base path to its mappings. This was previously implemented by tweaking the matching conditions.

We now also pick up Spring 5.3's PathPatternParser and apply that to the custom HandlerMapping implementations we register.

Moved DelegatingHandlerMapping into the configuration package to be able to keep it around in package scope.

Deprecated RepositoryRestConfiguration.getBaseUri() as we have only supported paths for quite a while now. Moved all client code to ….getBasePath() instead.
2020-07-01 18:55:11 +02:00
Mark Paluch
1f28937389 DATAREST-1522 - Prepare next development iteration. 2020-06-25 11:58:20 +02:00
Mark Paluch
05c43601ca DATAREST-1522 - Release version 3.4 M1 (2020.0.0). 2020-06-25 11:48:51 +02:00
Oliver Drotbohm
48a312bb45 DATAREST-1537 - Upgrade security tests to Spring Security 5.3.3. 2020-06-24 23:59:33 +02:00
Oliver Drotbohm
a9576991fe DATAREST-1535 - Adapt to changes in Spring Framework 5.3.
We now implement getPatternParser() in DelegatingHandlerMapping introduced in Spring 5.3. Adapt to changes in CORS handling.
2020-06-24 23:52:45 +02:00
Oliver Drotbohm
46f2171b49 DATAREST-1536 - Fix automatic module names for tests. 2020-06-24 23:52:45 +02:00
Mark Paluch
5368d5d5c8 DATAREST-1516 - Prepare next development iteration. 2020-05-12 12:40:28 +02:00
Mark Paluch
a9592c98f5 DATAREST-1516 - Release version 3.3 GA (Neumann). 2020-05-12 12:28:23 +02:00
Mark Paluch
9835b36c0a DATAREST-1501 - Prepare next development iteration. 2020-04-28 15:11:42 +02:00
Mark Paluch
7c20c0daa0 DATAREST-1501 - Release version 3.3 RC2 (Neumann). 2020-04-28 15:03:53 +02:00
Mark Paluch
0f81b110fc DATAREST-1492 - Prepare next development iteration. 2020-03-31 15:08:04 +02:00
Mark Paluch
638e3f875f DATAREST-1492 - Release version 3.3 RC1 (Neumann). 2020-03-31 14:59:41 +02:00
Oliver Drotbohm
db5995eee0 DATAREST-762 - Collection resource's base link now forwards parameters.
We now use the current request's URI as base link for all links created for a collection resource. This especially has effect in the creation of pagination links as we now carry potentially applied critierias (induced by our Querydsl based filtering support) forward to the navigation links generated.
2020-03-30 22:50:21 +02:00
Oliver Drotbohm
4c17d54e9a DATAREST-1499, DATAREST-1500 - Cleanups.
Moved off Spring Framework deprecations for HttpMessageNotReadableException. This required some rearrangements of method signatures for types (hopefully) exclusively used by internal abstractions (some public, but not very friendly for user extension in the first place).

Switched to consistent use of Pageable.unpaged() instead of null. Switched to the use of new factory methods in Spring HATEOAS. Some Java 8 based improvements in request handling to simplify the implementation code. Deprecation of code that got obsolete due to the use of the factory methods.

Moved off some deprecations in Jackson APIs.

Removed a couple of unused imports. General avoidance of common warnings. Suppression where needed. Removed dead code in configuration.
2020-03-27 14:16:47 +01:00