Sam Brannen
8c784085d2
Update copyright dates
2023-03-02 16:22:53 +01:00
Sam Brannen
b1cf832c28
Apply "instanceof pattern matching" in spring-tx
...
This commit applies "instanceof pattern matching" to the rest of the
code in spring-tx.
See gh-30019
2023-02-28 16:03:37 +01:00
Sam Brannen
34e5ce9360
Fix Checkstyle violations
...
See gh-30019
2023-02-28 16:03:37 +01:00
diguage
375114defa
Apply "instanceof pattern matching" in spring-tx
...
Closes gh-30019
2023-02-28 15:33:59 +01:00
Sam Brannen
6d24e62e83
Polishing
2023-02-19 17:43:31 +01:00
Johnny Lim
6739ca82ce
Polishing
...
See gh-23846
See gh-29955
Closes gh-29992
2023-02-19 13:41:36 +01:00
Sébastien Deleuze
026be04b75
Polish CoroutinesAnnotationTransactionInterceptorTests
2023-02-13 15:34:01 +01:00
Sébastien Deleuze
45ae00fda3
Propagate the context in Coroutines transactions
...
This commit ensures that CoroutineContext is properly
propagated in transactional suspending functions. Both
annotation and functional variants are supported.
Closes gh-27308
2023-02-13 15:34:01 +01:00
Sébastien Deleuze
e170c16b02
Refine TransactionalOperator.executeAndAwait nullability
...
Before this commit, TransactionalOperator.executeAndAwait had a rigid
null-safety handling. This commit takes advantage of Kotlin capability
to allow to deal with both non-null and nullable depending on the
nullability of the lambda.
Closes gh-29919
2023-02-02 14:39:33 +01:00
Juergen Hoeller
4d6249811e
Explicit target ClassLoader for interface-based infrastructure proxies
...
Includes direct JDK Proxy usage instead of ProxyFactory where possible.
Closes gh-29913
2023-01-31 16:11:34 +01:00
Sam Brannen
0502d18e3d
Update copyright headers
2023-01-19 16:20:03 +01:00
Sam Brannen
c4c786596f
Migrate to Mockito.mock(T...) where feasible
2023-01-19 16:20:02 +01:00
Sam Brannen
a4956dfe26
Update copyright headers
2023-01-11 13:52:20 +01:00
Sam Brannen
0415975dd1
Polish contribution and related code
2023-01-11 13:52:20 +01:00
Krzysztof Krason
afb8a0d1b1
Use new Java features (switch expressions, text blocks, new JDK methods)
...
Closes gh-29747
2023-01-11 13:51:28 +01:00
Sam Brannen
e5cfbae3fd
Polishing
2022-12-16 13:48:45 +01:00
Sam Brannen
618989d317
Update copyright date
2022-12-13 13:44:18 +01:00
Juergen Hoeller
4c69892f39
Detect SQL state 23505/40001 as DuplicateKeyException/CannotAcquireLockException
...
Favors PessimisticLockingFailureException over plain ConcurrencyFailureException.
Deprecates CannotSerializeTransactionException and DeadlockLoserDataAccessException.
Closes gh-29511
Closes gh-29675
2022-12-13 11:07:13 +01:00
Sam Brannen
ad60164911
Update copyright headers for source code changed since August 2022
...
The changes in this commit were performed using the newly introduced
update_copyright_headers.sh script.
2022-11-29 19:38:42 +01:00
Sam Brannen
36f7597f25
Use AssertJ's hasSize() for collections and maps
...
Achieved via a global search-and-replace.
2022-11-22 16:50:10 +01:00
Sam Brannen
508d2c7a77
Fix Javadoc formatting issues for headings
...
Headings in method-level Javadoc must be h4 or higher in recent versions
of Java.
2022-11-16 14:09:42 +01:00
Sam Brannen
f26a7dee97
Fix broken tests, update copyright dates, and polish
...
See gh-29414
2022-11-08 20:07:53 +01:00
Kulwant Singh
b2c8546013
Rely on automatic boxing/unboxing in tests
...
Closes gh-29414
2022-11-08 19:38:03 +01:00
Sam Brannen
e1010a179f
Merge branch '5.3.x'
...
# Conflicts:
# spring-context/src/test/java/org/springframework/context/annotation/Gh29105Tests.java
2022-11-08 12:27:40 +01:00
Sam Brannen
e5878ab15b
Fix precondition assertions
2022-11-08 12:08:08 +01:00
Sam Brannen
ae368a20b8
Merge branch '5.3.x'
...
# Conflicts:
# spring-web/src/test/kotlin/org/springframework/http/codec/json/KotlinSerializationJsonDecoderTests.kt
# spring-web/src/test/kotlin/org/springframework/http/codec/json/KotlinSerializationJsonEncoderTests.kt
2022-10-08 14:06:41 +02:00
Johnny Lim
1c1a0afbed
Use AssertJ static imports consistently in 5.3.x
...
Closes gh-29282
2022-10-08 13:57:21 +02:00
Sam Brannen
321092ce6f
Consistent use of @Deprecated(since = "6.0")
2022-09-20 14:34:24 +02:00
Sam Brannen
8d92c57777
Merge branch '5.3.x'
...
# Conflicts:
# spring-tx/src/main/java/org/springframework/jca/cci/core/support/CciDaoSupport.java
2022-09-14 16:52:55 +02:00
Sam Brannen
62a0ab3667
Polish contribution
2022-09-14 16:50:32 +02:00
Marc Wrobel
92a231cf91
Fix typos in Javadoc, reference docs, and code
...
Closes gh-28822
2022-09-14 16:45:34 +02:00
Sébastien Deleuze
9cfe79186d
Stop using RuntimeHintsUtils
...
Due to gh-29053, we can stop using RuntimeHintsUtils to
register SynthesizedAnnotation proxies.
Closes gh-29059
2022-09-07 10:10:07 +02:00
Sébastien Deleuze
b8c1fc9202
Revert "Remove RuntimeHintsUtils"
...
This reverts commit 3e327f5641 .
2022-09-06 18:21:34 +02:00
Sébastien Deleuze
3e327f5641
Remove RuntimeHintsUtils
...
Due to gh-29053, we can stop using RuntimeHintsUtils to
register SynthesizedAnnotation proxies.
Closes gh-29058
Closes gh-29059
2022-09-06 15:31:02 +02:00
Stephane Nicoll
58b0251af1
Relocate TestGenerationContext to spring-core-test
...
This commit moves the test implementation for GenerationContext in
spring-core-test. This also removes the copy we had in testfixtures
See gh-28877
2022-09-05 16:21:17 +02:00
Sam Brannen
69f23095b8
Deprecate SynthesizedAnnotation and related methods
...
Since Spring no longer adds the SynthesizedAnnotation interface to the
JDK dynamic proxy used to synthesize an annotation, this commit
officially deprecates SynthesizedAnnotation and related methods in
RuntimeHintsUtils.
See gh-29041, gh-29054
Closes gh-29053
2022-09-02 12:04:17 +02:00
Phillip Webb
505da5c602
Migrate hint registration to shortcuts
...
Migrate code to make use of the `MemberCategory` and `FieldMode`
shortcuts.
See gh-29011
2022-09-01 17:26:06 -07:00
Sébastien Deleuze
daf2d940e4
Remove specific JDK dynamic proxy configuration
...
Further refinements will be required for
MethodValidationPostProcessor since @Lazy
used by Spring Boot is not supported yet
for that use case.
See gh-28980
2022-08-22 10:53:12 +02:00
Stephane Nicoll
d6afa8df2d
Improve registration of the same hint for multiple classes
...
Based on the feedback in #28977 an easy way to create a list of
type references based on a vararg of classes is helpful when
registering the same hints for several types.
2022-08-18 06:52:34 +02:00
Stephane Nicoll
4f0c879778
Rationalize hints required for annotations
...
This commit updates RuntimeHintsUtils to focus on registering a JDK
proxy only as annotations of annotated elements that have at least
an introspection hints are visible out-of-the-box.
This commit also removes unnecessary hints and adapt `@Reflective` to
detect if a hint is required using the introduced
MergedAnnotation#isSynthesizable.
See gh-28967
2022-08-16 15:42:52 +02:00
Juergen Hoeller
38c9e7f629
Polishing
2022-08-10 23:30:27 +02:00
Stephane Nicoll
2c92d7da8f
Harmonize RuntimeHintsRegistrar implementations
...
Closes gh-28801
2022-07-12 18:30:23 +02:00
Stephane Nicoll
54a3f66d1d
Move RuntimeHints predicate support to a dedicated package
...
This commit moves `RuntimeHintsPredicate` and its support classes that
form a cohesive concept in a dedicated `.predicate` package.
Closes gh-28799
2022-07-12 16:16:12 +02:00
Sam Brannen
49b47cc6cf
Merge branch '5.3.x'
...
# Conflicts:
# spring-tx/src/main/java/org/springframework/jca/endpoint/GenericMessageEndpointFactory.java
2022-07-12 12:42:49 +02:00
Marc Wrobel
3b68e97710
Fix and improve Javadoc in spring-tx
...
Closes gh-28794
2022-07-12 12:36:49 +02:00
Sam Brannen
5178e9c28e
Simplify hint registration for Spring AOP proxies
...
Prior to this commit, when users wished to register proxy hints for a
Spring AOP JDK dynamic proxy, they were required to explicitly specify
SpringProxy, Advised, and DecoratingProxy along with user interfaces.
This commit simplifies hint registration for Spring AOP proxies by
introducing two completeJdkProxyInterfaces() methods in AopProxyUtils,
one that accepts strings and one that accepts classes that represent
the user-specified interfaces implemented the user component to be
proxied. The SpringProxy, Advised, and DecoratingProxy interfaces are
appended to the user-specified interfaces and returned as the complete
set of interfaces that the proxy will implement.
Closes gh-28745
2022-07-10 20:10:12 +02:00
Sam Brannen
2af08cf163
Merge branch '5.3.x'
...
# Conflicts:
# spring-core/src/test/java/org/springframework/core/annotation/TypeMappedAnnotationTests.java
# spring-test/src/test/java/org/springframework/test/context/junit4/TimedSpringRunnerTests.java
# spring-test/src/test/java/org/springframework/test/util/MetaAnnotationUtilsTests.java
# spring-test/src/test/java/org/springframework/test/util/OverriddenMetaAnnotationAttributesTests.java
2022-07-09 16:24:04 +02:00
Sam Brannen
d274e893a6
Remove superfluous static declaration for enum, annotation, & interface
2022-07-09 16:16:13 +02:00
Sam Brannen
73d92d66b9
Stop using convention-based annotation attribute overrides in tests
...
This commit replaces convention-based annotation attribute overrides in
tests with explicit use of @AliasFor -- except for tests in spring-core,
since we still want to test our support for convention-based annotation
attribute overrides.
See gh-28760
2022-07-08 19:28:14 +02:00
Sébastien Deleuze
49fd7c99ae
Fix TransactionBeanRegistrationAotProcessorTests
...
See gh-28717
2022-07-08 17:30:11 +02:00