From 3276a4131ca6feb6e0380d0a3981de1f0382ac13 Mon Sep 17 00:00:00 2001 From: Yanming Zhou Date: Tue, 26 May 2026 16:19:41 +0800 Subject: [PATCH] Polish BeanFactoryExtensions to use API introduced since 7.0 Signed-off-by: Yanming Zhou --- .../beans/factory/BeanFactoryExtensions.kt | 3 ++- .../beans/factory/BeanFactoryExtensionsTests.kt | 14 +++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/spring-beans/src/main/kotlin/org/springframework/beans/factory/BeanFactoryExtensions.kt b/spring-beans/src/main/kotlin/org/springframework/beans/factory/BeanFactoryExtensions.kt index 3bd4d67bb2ea..b939118105a6 100644 --- a/spring-beans/src/main/kotlin/org/springframework/beans/factory/BeanFactoryExtensions.kt +++ b/spring-beans/src/main/kotlin/org/springframework/beans/factory/BeanFactoryExtensions.kt @@ -58,8 +58,9 @@ inline fun BeanFactory.getBean(vararg args:Any): T = * * @see BeanFactory.getBeanProvider(ResolvableType) * @author Sebastien Deleuze + * @author Yanming Zhou * @since 5.1 */ inline fun BeanFactory.getBeanProvider(): ObjectProvider = - getBeanProvider(ResolvableType.forType((object : ParameterizedTypeReference() {}).type)) + getBeanProvider(object : ParameterizedTypeReference() {}) diff --git a/spring-beans/src/test/kotlin/org/springframework/beans/factory/BeanFactoryExtensionsTests.kt b/spring-beans/src/test/kotlin/org/springframework/beans/factory/BeanFactoryExtensionsTests.kt index 750fc095efda..af28018037b6 100644 --- a/spring-beans/src/test/kotlin/org/springframework/beans/factory/BeanFactoryExtensionsTests.kt +++ b/spring-beans/src/test/kotlin/org/springframework/beans/factory/BeanFactoryExtensionsTests.kt @@ -37,17 +37,17 @@ class BeanFactoryExtensionsTests { @Test fun `getBean with reified type parameters`() { val foo = Foo() - every { bf.getBeanProvider(ofType()).getObject() } returns foo + every { bf.getBeanProvider(object : ParameterizedTypeReference() {}).getObject() } returns foo assertThat(bf.getBean()).isSameAs(foo) - verify { bf.getBeanProvider>(ofType()).getObject() } + verify { bf.getBeanProvider(object : ParameterizedTypeReference() {}).getObject() } } @Test fun `getBean with reified generic type parameters`() { val foo = listOf(Foo()) - every { bf.getBeanProvider>(ofType()).getObject() } returns foo + every { bf.getBeanProvider(object : ParameterizedTypeReference>() {}).getObject() } returns foo assertThat(bf.getBean>()).isSameAs(foo) - verify { bf.getBeanProvider>>(ofType()).getObject() } + verify { bf.getBeanProvider(object : ParameterizedTypeReference>() {}).getObject() } } @Test @@ -71,15 +71,15 @@ class BeanFactoryExtensionsTests { val arg1 = "arg1" val arg2 = "arg2" val bar = Bar(arg1, arg2) - every { bf.getBeanProvider(ofType()).getObject(arg1, arg2) } returns bar + every { bf.getBeanProvider(object : ParameterizedTypeReference() {}).getObject(arg1, arg2) } returns bar assertThat(bf.getBean(arg1, arg2)).isSameAs(bar) - verify { bf.getBeanProvider(ofType()).getObject(arg1, arg2) } + verify { bf.getBeanProvider(object : ParameterizedTypeReference() {}).getObject(arg1, arg2) } } @Test fun `getBeanProvider with reified type parameters`() { bf.getBeanProvider() - verify { bf.getBeanProvider>(ofType()) } + verify { bf.getBeanProvider(object : ParameterizedTypeReference() {}) } } class Foo