Commit Graph

1258 Commits

Author SHA1 Message Date
Phillip Webb
aa4e56b251 Optimize @Configuration class parsing a little
Update `ConfigurationClassParser` to skip `java.lang.annotation` types
which were often processed but would never provide useful results. Also
use a single shared immutable `SourceClass` instance to represent
`Object.class`.

Closes gh-22563
2019-03-22 20:40:05 +01:00
Phillip Webb
9c92b21af8 Polishing 2019-03-22 20:40:05 +01:00
Sam Brannen
2b88c47477 Polish Javadoc for application event infrastructure 2019-03-17 20:21:47 +01:00
Sam Brannen
fef43048b2 Polish annotation-driven event listener support 2019-03-14 23:13:41 +01:00
Juergen Hoeller
0b53dbf38f Allow usage of BeanNameGenerator in ImportBeanDefinitionRegistrars
Closes gh-22591
2019-03-14 17:35:04 +01:00
Juergen Hoeller
840d80b994 Merge branch '5.1.x' 2019-03-13 16:24:01 +01:00
Juergen Hoeller
fe56aa6fa4 Polishing 2019-03-13 15:32:24 +01:00
Juergen Hoeller
88049e9b5c EventListenerMethodProcessor skips annotation search on java classes
Closes gh-22564
2019-03-13 15:32:14 +01:00
Juergen Hoeller
c0ddaae5c0 Shared empty InjectionMetadata/LifecycleMetadata instance
Closes gh-22570
2019-03-12 22:45:24 +01:00
Juergen Hoeller
40c62139ae Early resolution of unique factory methods in configuration classes
Includes consistent bean class resolution in the enhancement step as well as general reflection optimizations for user-declared methods.

Closes gh-22420
2019-03-12 17:17:24 +01:00
Сергей Цыпанов
a35adc6ea6 Add missing break statements to stop looping when result is known
Closes gh-22573
2019-03-12 13:15:59 +01:00
Juergen Hoeller
e3a9826e56 Bypass method traversal for annotation introspection if possible
The isCandidateClass mechanism is consistently used for a bypass check before method traversal attempts. While by default this is only bypassing standard java types, the same mechanism can be used with index metadata which indicates non-presence of certain annotations.

See gh-22420
2019-03-12 00:12:22 +01:00
Juergen Hoeller
1a8b3fba94 Configuration classes can opt into lite mode (proxyBeanMethods=false)
Closes gh-22461
2019-03-08 15:59:11 +01:00
Juergen Hoeller
ac4c37d8e2 Merge branch '5.1.x' 2019-03-07 18:05:46 +01:00
Juergen Hoeller
6c87ef09c1 Polishing 2019-03-07 17:55:32 +01:00
www
fd5a7c2dcc Fix Javadoc for AbstractApplicationContext.registerBeanPostProcessors()
Closes gh-22513
2019-03-06 12:12:17 +01:00
Juergen Hoeller
18f2e6a12d AnnotationConfigRegistry exposes registerBean with supplier/qualifiers
Closes gh-22457
2019-03-05 18:26:04 +01:00
www
ef91313342 Use String::isEmpty instead of "".equals(arg) when arg is not null 2019-03-05 14:32:56 +01:00
Sam Brannen
b7d60b9b89 Improve @EventListener documentation 2019-03-04 14:44:44 +01:00
Sam Brannen
6daf33deff Document that @Async is not supported in @Configuration classes 2019-03-03 18:29:45 +01:00
Sam Brannen
02be21d0dc Polishing 2019-03-02 14:22:28 +01:00
pelladigabor
a07245caf8 Exclude jdk package in ShadowingClassLoader
Many Java 11 internal classes are located in the jdk package. ShadowingClassLoader should not load them, because it can cause errors, e.g. java.lang.IllegalAccessError: class jdk.internal.reflect.ConstructorAccessorImpl loaded by org.springframework.instrument.classloading.ShadowingClassLoader @2bea5ab4 cannot access jdk/internal/reflect superclass jdk.internal.reflect.MagicAccessorImpl
2019-02-27 16:57:08 +01:00
www
c31613dc74 Instantiate ArrayList class with a exact initial capacity 2019-02-25 23:13:35 +01:00
Juergen Hoeller
bc0317af3b Merge branch '5.1.x' 2019-02-25 17:57:49 +01:00
Juergen Hoeller
9eb7f7e294 Polishing 2019-02-25 17:36:37 +01:00
Juergen Hoeller
4be41e9e26 Only use payload if it actually matches declared event type
Closes gh-22426
2019-02-25 17:18:07 +01:00
Sam Brannen
d61c3d429c Improve Javadoc and exception message for LTW classes 2019-02-25 14:21:23 +01:00
Sebastien Deleuze
dc8fb8bc5e Use StringJoiner where possible to simplify String joining 2019-02-25 12:11:57 +01:00
www
f2aa374b73 Polish
Closes gh-22463
2019-02-25 08:41:00 +01:00
Juergen Hoeller
6db75956b9 Merge branch '5.1.x' 2019-02-15 17:16:28 +01:00
Juergen Hoeller
e307dd58db Polishing 2019-02-15 17:06:11 +01:00
Juergen Hoeller
0b617a8c93 Deprecate PreferencesPlaceholderConfigurer along with its base class
Also removing common PropertyPlaceholderConfigurer doc references.

See gh-22181
2019-02-07 16:53:05 +01:00
Juergen Hoeller
d25783329a Merge branch '5.1.x' 2019-02-07 16:01:14 +01:00
Juergen Hoeller
0f73a69033 AbstractApplicationContext resets local listeners to pre-refresh state
Closes gh-22325
2019-02-07 15:56:46 +01:00
Juergen Hoeller
e9626779ee @Resource provides dependency descriptor for resolving beans by name
Closes gh-22359
2019-02-07 15:56:00 +01:00
Sebastien Deleuze
3787b23a98 Deprecate PropertyPlaceholderConfigurer
This commit deprecates PropertyPlaceholderConfigurer in favor of
PropertySourcesPlaceholderConfigurer.

Closes gh-22181
2019-02-06 16:00:24 +01:00
Juergen Hoeller
0ebc020b21 Load-time weaving support for WildFly 13+ (JBoss Modules 1.8+)
Fixes gh-22297
2019-02-05 00:44:52 +01:00
Juergen Hoeller
a27a6470f7 Polishing 2019-02-05 00:10:22 +01:00
kudrevatykh
85474297be Load-time weaving support for WildFly 13+ (#22297)
Load-time weaving support for WildFly 13+ (JBoss Modules 1.8+)
2019-02-04 23:31:21 +01:00
Juergen Hoeller
5aed117b68 Model interface exposes getAttribute method (next to add/contains)
Fixes gh-22145
2019-01-28 22:50:29 +01:00
Juergen Hoeller
d0033f12d0 ApplicationListenerMethodAdapter uses target method for order lookup
Fixes #22307
2019-01-25 15:44:43 +01:00
Juergen Hoeller
9cb5369cb9 DependencyDescriptor supports TypeDescriptor resolution for fields
This allows for proper nested type conversion in @Value Optional fields analogous to method parameters, through a new TypeDescriptor-based method in the TypeConverter SPI. As an additional and less involved measure that is worth backporting, DefaultListableBeanFactory defensively checks for pre-converted Optional wrappers.

Issue: SPR-17607
2019-01-08 17:11:27 +01:00
Juergen Hoeller
199be6aec5 ValidationUtils.invokeValidator assertion for non-null target object 2018-12-17 14:24:56 +01:00
Juergen Hoeller
aab421167b Revised format annotation docs 2018-12-13 17:19:50 +01:00
diguage
ee95a110bd Fix sample in EnableAsync Javadoc
Closes gh-2050
2018-12-13 10:16:56 +01:00
Juergen Hoeller
c48672c4c7 ParameterNameDiscoverer may return individual null entries in an array
Issue: SPR-17565
2018-12-12 21:56:17 +01:00
Juergen Hoeller
2c98c1b81a Relaxed assertion in NotificationPublisherAwareLazyTargetSource
Issue: SPR-17592
2018-12-12 12:16:14 +01:00
Juergen Hoeller
bf272b0b21 Nullability fine-tuning based on IntelliJ IDEA 2018.3 inspection
Issue: SPR-15540
2018-11-22 16:12:38 +01:00
Stephane Nicoll
7b6f2f8fb3 Polish contribution
Closes gh-2019
2018-11-19 08:45:33 +01:00
Hanope
bfb49c7249 Fix typos
See gh-2019
2018-11-19 08:41:21 +01:00