Juergen Hoeller
c9e85ec297
Introduce callback for singleton availability
...
Closes gh-21362
2024-03-07 09:57:29 +01:00
Juergen Hoeller
14a461e795
Consider type-level qualifier annotations for transaction manager selection
...
Closes gh-24291
2024-03-06 13:36:33 +01:00
Juergen Hoeller
b5ca646431
Leniently tolerate late bean retrieval during destroySingletons()
...
Closes gh-22526
Closes gh-29730
2024-03-04 17:21:02 +01:00
Yanming Zhou
246ebd24bf
Add missing method BeanDefinitionBuilder.setFallback()
2024-02-29 13:34:55 +01:00
Sébastien Deleuze
7c5bcbcba4
Merge branch '6.1.x'
2024-02-28 17:24:08 +01:00
Sébastien Deleuze
45c21042f6
Optimize Kotlin inline class checks
...
This commit fixes a performance regression caused by gh-31698,
and more specifically by KClass#isValue invocations which are slow since
they load the whole module to find the class to get the descriptor.
After discussing with the Kotlin team, it has been decided that only
checking for the presence of `@JvmInline` annotation is enough for
Spring use case.
As a consequence, this commit introduces a new
KotlinDetector#isInlineClass method that performs such check, and
BeanUtils, CoroutinesUtils and WebMVC/WebFlux InvocableHandlerMethod
have been refined to leverage it.
Closes gh-32334
2024-02-28 17:18:57 +01:00
Juergen Hoeller
aeb77cf4e1
Restore correct threadWithLock check without isInfoEnabled()
...
See gh-23501
2024-02-28 11:47:39 +01:00
Juergen Hoeller
17b2087198
Introduce background bootstrapping for individual singleton beans
...
Closes gh-13410
Closes gh-19487
See gh-23501
2024-02-27 22:33:18 +01:00
Juergen Hoeller
4d206f79d0
Merge branch '6.1.x'
...
# Conflicts:
# spring-jms/src/main/java/org/springframework/jms/listener/DefaultMessageListenerContainer.java
2024-02-26 13:42:00 +01:00
Juergen Hoeller
479879c53a
Polishing
2024-02-26 13:40:21 +01:00
Juergen Hoeller
2e57603310
Try type conversion for unique fallback write method as well
...
Closes gh-32329
See gh-32159
2024-02-26 13:40:05 +01:00
Juergen Hoeller
567547b63c
Skip shortcut resolution for non-standard dependency descriptors
...
Closes gh-32326
See gh-28122
2024-02-24 18:05:23 +01:00
Juergen Hoeller
58b8330e8d
Consistent documentation of defaults and related methods
...
See gh-32308
2024-02-23 14:41:37 +01:00
Sam Brannen
b0d08fe2d4
Spring cleaning: avoid deprecation warnings
2024-02-23 12:38:40 +01:00
Sam Brannen
122372c580
Spring cleaning: update copyright headers
2024-02-23 12:21:22 +01:00
Sam Brannen
4339c8eac2
Spring cleaning: use diamond operator
2024-02-23 12:20:11 +01:00
Juergen Hoeller
3ddc512108
Add missing @Override annotations
2024-02-22 11:21:51 +01:00
Yanming Zhou
76eb5b8c19
Replace redundant javadoc with {@inheritDoc} for AbstractBeanDefinition
2024-02-22 10:59:35 +01:00
Juergen Hoeller
491ebb4ec4
Merge branch '6.1.x'
...
# Conflicts:
# spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java
2024-02-21 23:01:09 +01:00
Juergen Hoeller
41433d445e
Polishing
2024-02-21 22:58:42 +01:00
Juergen Hoeller
7ffeb59b40
Polishing
2024-02-21 22:45:39 +01:00
Sam Brannen
bfed6a3bc5
Clean up warnings in Gradle build
2024-02-21 16:22:38 +01:00
Sam Brannen
b9c304b890
Polish contribution
...
See gh-32291
2024-02-21 16:19:53 +01:00
Patrick Strawderman
e1a32d4ba9
Avoid resizing of fixed-size HashSet/LinkedHashSet variants
...
Add helpers to CollectionUtils for building HashSets and LinkedHashSets
that can hold an expected number of elements without needing to
resize/rehash.
Closes gh-32291
2024-02-21 16:19:53 +01:00
Sam Brannen
3fb170058f
Polish contribution
...
See gh-32294
2024-02-21 14:09:09 +01:00
Patrick Strawderman
f9fe8efb2e
Use ConcurrentHashMap.newKeySet
...
In places where a ConcurrentHashMap was used as a set by wrapping it
with Collections.newSetFromMap, switch to just using the set returned
by ConcurrentHashMap.newKeySet directly.
Closes gh-32294
2024-02-21 14:08:38 +01:00
Juergen Hoeller
889c4e0ff5
Reject multiple primary candidates in ancestor factory as well
...
Closes gh-26612
2024-02-20 16:24:03 +01:00
Juergen Hoeller
93f0ec2fa1
Polishing
2024-02-20 15:42:15 +01:00
Juergen Hoeller
63ca8d5d17
Consider defaultCandidate flag in case of no annotations as well
...
See gh-26528
2024-02-20 15:30:38 +01:00
Juergen Hoeller
bc01e3116f
Ignore fallback bean for shortcut resolution
...
See gh-26241
See gh-28122
2024-02-20 13:51:37 +01:00
Juergen Hoeller
480051a21c
Introduce fallback flag and annotation (as companion to primary)
...
Closes gh-26241
2024-02-20 13:37:41 +01:00
Juergen Hoeller
a8fb16b47c
Introduce defaultCandidate flag (for plain type vs. qualified match)
...
Closes gh-26528
2024-02-20 12:00:47 +01:00
Juergen Hoeller
a001319f1f
Add additional shortcut for qualifier value matching target bean name
...
Closes gh-17677
See gh-28122
2024-02-19 22:39:37 +01:00
Juergen Hoeller
4a02893c31
Avoid early singleton inference outside of original creation thread
...
See gh-23501
2024-02-19 17:44:30 +01:00
Juergen Hoeller
902e5707a8
Revise singleton registry for lenient locking (fallback instead of deadlock)
...
Closes gh-23501
2024-02-19 15:49:33 +01:00
Juergen Hoeller
c6146ea2db
Introduce shortcut for declared dependency name matching target bean name
...
Closes gh-28122
2024-02-16 21:28:04 +01:00
Sam Brannen
71dfebbfe5
Polishing
2024-02-16 16:45:18 +01:00
Sam Brannen
ea4e7df9ca
Consistently declare ignoreUnresolvablePlaceholders as last argument
2024-02-16 15:00:32 +01:00
Sam Brannen
7c07c43201
Polishing
2024-02-16 15:00:06 +01:00
Stéphane Nicoll
bcf235cc66
Merge branch '6.1.x'
2024-02-16 08:36:26 +01:00
Stéphane Nicoll
6b8105aef2
Update copyright year of changed files
...
See gh-32281
2024-02-16 08:33:17 +01:00
Patrick Strawderman
481283d2f1
Use Spliterator of underlying collection
...
Delegate to the spliterator method of the underlying collection in
MutablePropertyValues and MutablePropertySources. In both cases, those
collection types have specialized Spliterator implementations.
Delegating to these Spliterators also means the characteristics of the
Spliterator are properly set.
See gh-32281
2024-02-16 08:32:41 +01:00
Juergen Hoeller
7e67da8a26
Support for matching partial generics
...
Closes gh-20727
2024-02-15 16:51:09 +01:00
Stéphane Nicoll
e3aa5b6b11
Use new implementation in PropertyPlaceholderHelper
...
This commit removes the previous implementation in favor of the new
PlaceholderParser. The only noticeable side effect is that the exception
is no longer an IllegalArgumentException, but rather the dedicated
PlaceholderResolutionException.
See gh-9628
2024-02-15 15:27:13 +01:00
Sébastien Deleuze
cc6dd19324
Polishing
2024-02-13 14:29:18 +01:00
Yanming Zhou
615973cce4
Fix assertion in BeanWrapperAutoGrowingTests
...
See gh-32176
2024-02-01 09:34:32 +01:00
Juergen Hoeller
00577ed80a
Polishing
2024-01-31 17:12:20 +01:00
Juergen Hoeller
9b2b485444
Disabled test for auto-growing nested map values
...
See gh-32154
2024-01-31 17:12:12 +01:00
Juergen Hoeller
af5acb6d34
Avoid pre-conversion attempt in case of overloaded write methods
...
Closes gh-32159
See gh-31872
2024-01-30 21:57:14 +01:00
Sam Brannen
db535863dd
Consistently use class literals for primitive types
...
To improve consistency and avoid confusion regarding primitive types
and their wrapper types, this commit ensures that we always use class
literals for primitive types.
For example, instead of using the `Void.TYPE` constant, we now
consistently use `void.class`.
2024-01-30 15:26:12 +01:00