Christoph Strobl
84049e9f8e
DATACMNS-1467 - Apply suggested documentation changes.
...
Original Pull Request: #332
7 years ago
Mark Paluch
687222d1fa
DATACMNS-1467 - Polishing.
...
Tweak docs.
Original Pull Request: #332
7 years ago
Christoph Strobl
dde9a651ba
DATACMNS-1467 - Decouple sync and reactive bits.
...
Add dedicated interfaces for sync and reactive usage.
Hide default implementation and use reflective callback method lookup.
Update documentation and add initial reference documentation snippet for store specific modules.
Original Pull Request: #332
7 years ago
Mark Paluch
52724cd5dd
DATACMNS-1467 - Entity Callback API draft.
...
This is a draft for a possible Entity Callback API heavily inspired by Spring Framework's Application Event listeners. Entity callbacks are callbacks for entities that allow for entity modification at certain check points such as before saving an entity or after loading it.
Entity callbacks consist of a marker-interface for all entity callback types and the EntityCallbacks API to dispatch callbacks.
Entity callbacks are picked up from the ApplicationContext and invoked sequentially according to their ordering.
Usage example:
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
SimpleEntityCallbacks callbacks = new SimpleEntityCallbacks(ctx);
PersonDocument personDocument = new PersonDocument(null, "Walter", null);
PersonDocument afterCallback = callbacks.callback(personDocument, BeforeSaveCallback.class,
BeforeSaveCallback::onBeforeSave);
Mono<PersonDocument> afterCallback = callbacks.callbackLater(personDocument, ReactiveBeforeSaveCallback.class,
ReactiveBeforeSaveCallback::onBeforeSave);
@Configuration
static class MyConfig {
@Bean
BeforeSaveCallback<Person> personCallback() {
return object -> {
object.setSsn(object.getFirstName().length());
return object;
};
}
@Bean
MyReactiveBeforeSaveCallback callback() {
return new MyReactiveBeforeSaveCallback();
}
}
class MyReactiveBeforeSaveCallback implements ReactiveBeforeSaveCallback<Person> {
@Override
public Mono<Person> onBeforeSave(Person object) {
PersonDocument result = new PersonDocument(object.getFirstName().length(), object.getFirstName(),
object.getLastName());
return Mono.just(result);
}
}
Original Pull Request: #332
7 years ago
Mark Paluch
83611de861
DATACMNS-1500 - URL Cleanup.
7 years ago
Jens Schauder
467f60ffdc
DATACMNS-1538 - Polishing.
...
Removed Hamcrest and the `ExpectedException` rule and replaced it with AssertJ.
Removed now obsolete assertions checking against old Spring Framework versions.
Formatting.
Original pull request: #396 .
7 years ago
arielcarrera
098842765d
DATACMNS-1538 - Repository proxy post processors in CDI.
...
Add support for custom repository proxy post processors in CDI.
Original pull request: #396 .
7 years ago
Mark Paluch
efa529a7a6
DATACMNS-1540 - Use thread-safe path cache in QuerydslPredicateBuilder.
...
We now use ConcurrentHashMap instead of HashMap to cache Path instances by PathInformation.
7 years ago
Christoph Strobl
d6bb21d24f
DATACMNS-1534 - Cache BeanFactory lookup for EvaluationContextExtension.
...
We now cache the BeanFactory lookup for EvaluationContextExtension within the ExtensionAwareEvalutationContextProvider to avoid (expensive) repeated context scans when creating the actual EvaluationContext.
Original pull request: #395 .
7 years ago
Mark Paluch
15969ee01f
DATACMNS-1531 - Updated changelog.
7 years ago
Mark Paluch
46a4e2ffe0
DATACMNS-1530 - Updated changelog.
7 years ago
Mark Paluch
9934695343
DATACMNS-1515 - Prepare 2.2 M4 (Moore).
7 years ago
Mark Paluch
fe691b41a4
DATACMNS-1515 - Updated changelog.
7 years ago
Oliver Drotbohm
58119b29d8
DATACMNS-1505 - Updated changelog.
7 years ago
Oliver Drotbohm
426036f2a7
DATACMNS-1507 - Updated changelog.
7 years ago
Oliver Drotbohm
a45a0ded9c
DATACMNS-1518 - Fixed detection of varargs overloads for SpEL expressions.
...
Before this commit we haven't properly resolved methods on a root object provided by an EvaluationContextExtension that was using varargs. With a vararg method, the number of parameters handed into the method is not necessary equal to the number of parameters. We previously simply skipped methods with a different number of arguments. We now try direct matches first but calculate valid varargs alternatives in case that initial lookup fails and try to match those alternatives.
This lookup is implemented in ….util.ParameterTypes now and used by ….spel.spi.Function. The latter now also handles the actual invocation of those methods properly by collecting the trailing arguments into an array.
7 years ago
Oliver Drotbohm
e31c7aed51
DATACMNS-1526 - Adapt to API changes in Spring HATEOAS.
7 years ago
David Schneider
a8e90b1932
DATACMNS-1510 - Fix phrasing in Javadoc of @Param .
...
Original pull request: #389 .
7 years ago
Jerzy Kwiatkowski
2b6682d3b1
DATACMNS-1520 - Fix typo in Javadoc.
...
Original pull request: #393 .
7 years ago
Christoph Strobl
314b5c5842
DATACMNS-1493 - Prepare 2.2 M3 (Moore).
7 years ago
Christoph Strobl
6ac4922616
DATACMNS-1493 - Updated changelog.
7 years ago
Oliver Drotbohm
a5681f637c
DATACMNS-1497 - Polishing.
...
RepositoryBeanDefinitionRegistrarSupport now also overrides registerBeanDefinitions(AnnotationMetadata, BeanDefinitionRegistry) so that unit test in downstream modules still work.
Added defaulting of BeanNameGenerator in XmlRepositoryConfigurationSource so that we use an AnnotationBeanNameGenerator if a DefaultBeanNameGenerator is handed in.
Related tickets: spring-projects/spring-framework#22591
7 years ago
Oliver Drotbohm
1150e409ca
DATACMNS-1497 - Polishing.
7 years ago
Oliver Drotbohm
753d8bbb33
DATACMNS-1497 - Configuration infrastructure now considers scanning BeanNameGenerator.
...
We now implement the newly introduced ImportBeanDefinitionRegistrar overload additional provided with a BeanNameGenerator configured for the import scanning. We forward this into our bean name generation infrastructure as fallback.
Related tickets: spring-projects/spring-framework#22591
7 years ago
Oliver Drotbohm
c4a51f1c24
DATACMNS-1480 - Updated changelog.
7 years ago
Oliver Drotbohm
eb79408556
DATACMNS-1464 - Updated changelog.
7 years ago
Oliver Drotbohm
b40ce01e54
DATACMNS-1504 - Updated changelog.
7 years ago
Oliver Drotbohm
66702a6c47
DATACMNS-1463 - Updated changelog.
7 years ago
Spring Operator
48c9297118
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 701 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: #387
7 years ago
Spring Operator
38c2ec0ae3
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).
# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* [ ] http://help.eclipse.org/oxygen/index.jsp?topic=/org.eclipse.jdt.doc.user/tasks/task-using_external_null_annotations.htm (200) with 1 occurrences could not be migrated:
([https](https://help.eclipse.org/oxygen/index.jsp?topic=/org.eclipse.jdt.doc.user/tasks/task-using_external_null_annotations.htm ) result SSLException).
* [ ] http://www.querydsl.com (200) with 2 occurrences could not be migrated:
([https](https://www.querydsl.com ) result AnnotatedConnectException).
* [ ] http://www.querydsl.com/ (200) with 2 occurrences could not be migrated:
([https](https://www.querydsl.com/ ) result AnnotatedConnectException).
* [ ] http://xml.org/sax/features/external-general-entities (301) with 1 occurrences could not be migrated:
([https](https://xml.org/sax/features/external-general-entities ) result SSLHandshakeException).
# Fixed URLs
## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* [ ] http://www.w3.org/2001/03/xml.xsd (ReadTimeoutException) with 1 occurrences migrated to:
https://www.w3.org/2001/03/xml.xsd ([https](https://www.w3.org/2001/03/xml.xsd ) result SSLException).
* [ ] http://www.w3.org/XML/1998/namespace (ReadTimeoutException) with 1 occurrences migrated to:
https://www.w3.org/XML/1998/namespace ([https](https://www.w3.org/XML/1998/namespace ) result SSLException).
* [ ] http://foo:9090 (UnknownHostException) with 2 occurrences migrated to:
https://foo:9090 ([https](https://foo:9090 ) result UnknownHostException).
* [ ] http://http://www.querydsl.com (UnknownHostException) with 1 occurrences migrated to:
https://http://www.querydsl.com ([https](https://https://www.querydsl.com ) result UnknownHostException).
* [ ] http://apache.org/xml/features/disallow-doctype-decl (404) with 1 occurrences migrated to:
https://apache.org/xml/features/disallow-doctype-decl ([https](https://apache.org/xml/features/disallow-doctype-decl ) result 404).
## 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://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html ([https](https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html ) result 200).
* [ ] http://docs.spring.io/spring/docs/ with 1 occurrences migrated to:
https://docs.spring.io/spring/docs/ ([https](https://docs.spring.io/spring/docs/ ) result 200).
* [ ] http://github.com/spring-projects/spring-data-commons with 1 occurrences migrated to:
https://github.com/spring-projects/spring-data-commons ([https](https://github.com/spring-projects/spring-data-commons ) result 200).
* [ ] http://goessner.net/articles/JsonPath/ with 1 occurrences migrated to:
https://goessner.net/articles/JsonPath/ ([https](https://goessner.net/articles/JsonPath/ ) result 200).
* [ ] http://projects.spring.io/spring-data/ with 2 occurrences migrated to:
https://projects.spring.io/spring-data/ ([https](https://projects.spring.io/spring-data/ ) result 200).
* [ ] http://stackoverflow.com/questions/tagged/spring-data with 2 occurrences migrated to:
https://stackoverflow.com/questions/tagged/spring-data ([https](https://stackoverflow.com/questions/tagged/spring-data ) result 200).
* [ ] http://www.regular-expressions.info/unicode.html with 2 occurrences migrated to:
https://www.regular-expressions.info/unicode.html ([https](https://www.regular-expressions.info/unicode.html ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context.xsd with 8 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* [ ] http://www.springframework.org/schema/data/repository/spring-repository.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/data/repository/spring-repository.xsd ([https](https://www.springframework.org/schema/data/repository/spring-repository.xsd ) result 200).
* [ ] http://www.vavr.io/ with 2 occurrences migrated to:
https://www.vavr.io/ ([https](https://www.vavr.io/ ) result 200).
* [ ] http://contributor-covenant.org with 1 occurrences migrated to:
https://contributor-covenant.org ([https](https://contributor-covenant.org ) result 301).
* [ ] http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/ ) result 301).
* [ ] http://docs.spring.io/spring-data/data-commons/docs/current/reference/html/ with 1 occurrences migrated to:
https://docs.spring.io/spring-data/data-commons/docs/current/reference/html/ ([https](https://docs.spring.io/spring-data/data-commons/docs/current/reference/html/ ) result 301).
* [ ] http://help.github.com/forking/ with 1 occurrences migrated to:
https://help.github.com/forking/ ([https](https://help.github.com/forking/ ) result 301).
* [ ] http://projects.spring.io/spring-data with 1 occurrences migrated to:
https://projects.spring.io/spring-data ([https](https://projects.spring.io/spring-data ) result 301).
* [ ] http://www.atomenabled.org/developers/syndication/atom-format-spec.php with 1 occurrences migrated to:
https://www.atomenabled.org/developers/syndication/atom-format-spec.php ([https](https://www.atomenabled.org/developers/syndication/atom-format-spec.php ) result 301).
* [ ] http://www.springframework.org/schema/data/jpa/spring-jpa.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/data/jpa/spring-jpa.xsd ([https](https://www.springframework.org/schema/data/jpa/spring-jpa.xsd ) result 301).
* [ ] http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 301).
* [ ] http://www.threeten.org/threetenbp with 2 occurrences migrated to:
https://www.threeten.org/threetenbp ([https](https://www.threeten.org/threetenbp ) result 301).
* [ ] http://www.xmlbeam.org with 2 occurrences migrated to:
https://www.xmlbeam.org ([https](https://www.xmlbeam.org ) result 301).
* [ ] http://www.springsource.org/download with 1 occurrences migrated to:
https://www.springsource.org/download ([https](https://www.springsource.org/download ) result 302).
# Ignored
These URLs were intentionally ignored.
* http://localhost:8080/persons with 1 occurrences
* http://localhost:8080/persons?page=1&size=20 with 1 occurrences
* http://localhost:8080?page=0&size=10 with 1 occurrences
* http://www.springframework.org/schema/beans with 8 occurrences
* http://www.springframework.org/schema/context with 16 occurrences
* http://www.springframework.org/schema/data/jaxb with 3 occurrences
* http://www.springframework.org/schema/data/jpa with 4 occurrences
* http://www.springframework.org/schema/data/repository with 20 occurrences
* http://www.springframework.org/schema/oxm with 2 occurrences
* http://www.springframework.org/schema/tool with 16 occurrences
* http://www.w3.org/1999/xhtml with 1 occurrences
* http://www.w3.org/2001/XMLSchema with 10 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 4 occurrences
* http://www.w3.org/2005/Atom with 4 occurrences
Original Pull Request: #367
7 years ago
Spring Operator
f341973210
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).
* http://www.springframework.org/schema/beans/spring-beans.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* http://www.springframework.org/schema/data/repository/spring-repository.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/data/repository/spring-repository.xsd ([https](https://www.springframework.org/schema/data/repository/spring-repository.xsd ) result 200).
* http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 200).
# Ignored
These URLs were intentionally ignored.
* http://maven.apache.org/POM/4.0.0 with 2 occurrences
* http://www.springframework.org/schema/beans with 6 occurrences
* http://www.springframework.org/schema/context with 2 occurrences
* http://www.springframework.org/schema/data/jaxb with 1 occurrences
* http://www.springframework.org/schema/data/repository with 2 occurrences
* http://www.springframework.org/schema/oxm with 2 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 4 occurrences
* http://www.w3.org/2005/Atom with 1 occurrences
Original Pull Request: #366
7 years ago
Oliver Drotbohm
e9f77d6046
DATACMNS-1499 - Added new convenience factory methods on Range.
7 years ago
Oliver Drotbohm
4e6b12fc8a
DATACMNS-1498 - Improved attribute lookup on RepositoryConfigurationSource.
7 years ago
Oliver Drotbohm
0bf160eb97
DATACMNS-1496 - Removed deprecations at least introduced in Lovelace.
7 years ago
Christoph Strobl
c686b5aabf
DATACMNS-1445 - Prepare 2.2 M2 (Moore).
7 years ago
Christoph Strobl
0653107723
DATACMNS-1445 - Updated changelog.
7 years ago
Keegan Witt
4b55b90806
DATACMNS-1491 - Fix JavaDoc of SliceImpl regarding nullability of Pageable parameter.
...
The docs previously stated that argument could be null when in fact that is rejected by the superclass' constructor.
7 years ago
Oliver Drotbohm
ea3af3dbbb
DATACMNS-1449 - MethodInvocationRecorder now rejects final types.
7 years ago
Oliver Drotbohm
34507ec000
DATACMNS-1450 - Introduced type-safe Sort API.
...
We now expose a TypedSort that can use method handles to define properties to sort by.
Sort.sort(Person.class).by(Person::getName).ascending();
Related tickets: DATACMNS-1449.
7 years ago
Oliver Gierke
34d95fb7e4
DAATCMNS-1449 - Added API to record method invocations.
...
Introduced MethodInvocationRecorder to record method invocations on types to obtain the property traversal those invocations represent.
Recorded<ZipCode> recorded = MethodInvocationRecorder.forProxyOf(Person.class)
.record(Person::getAddress)
.record(Address::getZipCode);
assertThat(recorded.getPropertyPath)).hasValue("address.zipCode");
7 years ago
Oliver Drotbohm
435aaaaa35
DATACMNS-1470 - Adapt to package refactorings in Spring HATEOAS.
7 years ago
Oliver Drotbohm
742f29572e
DATACMNS-1484 - Polishing.
7 years ago
Oliver Drotbohm
dd0848b186
DATACMNS-1484 - Fixed too aggressive conversion to Streamable in IterableToStreamableConverter.
...
We now explicitly check for the target type to be assignable to Streamable to opt into conversion. Without that check, every collection returned from a method declaring Iterable as return type would've been converted into a Streamable by accident.
Related ticket: DATACMNS-1430.
7 years ago
Oliver Drotbohm
d12801a7b0
DATACMNS-1482 - Polishing.
...
Slightly improved test case.
7 years ago
Jens Schauder
47966451eb
DATACMNS-1482 - Polishing.
...
Fixed some wrong JavaDoc.
7 years ago
Jens Schauder
6dc0ced366
DATACMNS-1482 - Properly convert collections when collection type matches but element type doesn't.
...
Various fast returns and the use of Class instead of TypeDescriptor led to e.g. List<BigDecimal> not getting properly converted to List<Integer> leading to unexpected ClassCastExceptions when the collection elements where accessed.
7 years ago
Mark Paluch
f65fd511ac
DATACMNS-1483 - Polishing.
...
Statically import Assertions to align assertThat(…) calls with Java code. Use placeholder for MockK version.
Original pull request: #338 .
7 years ago
Sebastien Deleuze
ccb9e987e8
DATACMNS-1483 - Migrate Kotlin tests to Mockk.
...
Original pull request: #338 .
7 years ago
Oliver Drotbohm
092e23b08c
DATACMNS-1470 - Further adaption of Spring HATEOAS 1.0 API changes.
7 years ago
Mark Paluch
aa39b9ba3a
DATACMNS-1451 - Consider more than 16 immutable Kotlin properties in generated PropertyAccessor.
...
We now consider more than 16 immutable and nullable Kotlin properties per bucket in generated PropertyAccessors.
Previously only the first 16 properties were considered due to truncation of the defaulting bitmap. We used SIPUSH to render the defaulting mask in bytecode which is intended for 16 bit integers (short). Migrating to LDC (runtime constants) preserves the actual constant value of 32 bits and so we're considering now full buckets.
7 years ago