Closed
Description
Juergen Hoeller opened SPR-16020 and commented
With #20432 leading to yet another need for a Kotlin-specific parameter declaration check, let's take the opportunity to streamline our Kotlin support code: Specifically, we can unify the detection of Kotlin's optional parameters in MethodParameter.isOptional()
, reduce BeanUtils.findPrimaryConstructor
to Kotlin semantics (for reuse in AutowiredAnnotationBeanPostProcessor
as well as data class construction), and finally introduce a common KotlinDetector
delegate with an isKotlinType(Class)
check.
Affects: 5.0 RC4
Issue Links:
- Kotlin class instantiation with optional parameters and default values [SPR-15673] #20232 Kotlin class instantiation with optional parameters and default values
- Add support for Kotlin autowired constructor with optional parameters [SPR-15847] #20402 Add support for Kotlin autowired constructor with optional parameters
- Revisit handling of missing fields (without default values) for immutable data classes [SPR-15877] #20432 Revisit handling of missing fields (without default values) for immutable data classes
- GenericApplicationContext.registerBean should support non-default constructors [SPR-17292] #21825 GenericApplicationContext.registerBean should support non-default constructors
Referenced from: commits ec345bf