Java Code Examples for org.springframework.context.ConfigurableApplicationContext#getBeanNamesForType()
The following examples show how to use
org.springframework.context.ConfigurableApplicationContext#getBeanNamesForType() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: WingtipsSpringBootConfigurationTest.java From wingtips with Apache License 2.0 | 5 votes |
@DataProvider(value = { "MANUAL_IMPORT_ONLY", "COMPONENT_SCAN_ONLY", "BOTH_MANUAL_AND_COMPONENT_SCAN" }) @Test public void component_test(ComponentTestSetup componentTestSetup) { // given int serverPort = findFreePort(); Class<?> mainClass = componentTestSetup.mainClass; ConfigurableApplicationContext serverAppContext = SpringApplication.run(mainClass, "--server.port=" + serverPort); try { // when WingtipsSpringBootConfiguration config = serverAppContext.getBean(WingtipsSpringBootConfiguration.class); WingtipsSpringBootProperties props = serverAppContext.getBean(WingtipsSpringBootProperties.class); String[] someComponentScannedClassBeanNames = serverAppContext.getBeanNamesForType(SomeComponentScannedClass.class); // then // Sanity check that we component scanned (or not) as appropriate. if (componentTestSetup.expectComponentScannedObjects) { assertThat(someComponentScannedClassBeanNames).isNotEmpty(); } else { assertThat(someComponentScannedClassBeanNames).isEmpty(); } // WingtipsSpringBootConfiguration and WingtipsSpringBootProperties should be available as beans, and // the config should use the same props we received. assertThat(config).isNotNull(); assertThat(props).isNotNull(); assertThat(config.wingtipsProperties).isSameAs(props); } finally { SpringApplication.exit(serverAppContext); } }
Example 2
Source File: WingtipsWithZipkinSpringBoot2WebfluxConfigurationTest.java From wingtips with Apache License 2.0 | 4 votes |
@DataProvider(value = { "MANUAL_IMPORT_ONLY", "COMPONENT_SCAN_ONLY", "BOTH_MANUAL_AND_COMPONENT_SCAN", "WITH_ZIPKIN_REPORTER_OVERRIDE", "WITH_CONVERTER_OVERRIDE", "WITH_BOTH_REPORTER_AND_CONVERTER_OVERRIDES" }) @Test public void component_test(ComponentTestSetup componentTestSetup) { // given int serverPort = findFreePort(); Class<?> mainClass = componentTestSetup.mainClass; ConfigurableApplicationContext serverAppContext = SpringApplication.run(mainClass, "--server.port=" + serverPort); try { // when WingtipsSpringBoot2WebfluxConfiguration baseConfig = serverAppContext.getBean(WingtipsSpringBoot2WebfluxConfiguration.class); WingtipsWithZipkinSpringBoot2WebfluxConfiguration zipkinConfig = serverAppContext.getBean(WingtipsWithZipkinSpringBoot2WebfluxConfiguration.class); WingtipsSpringBoot2WebfluxProperties baseProps = serverAppContext.getBean(WingtipsSpringBoot2WebfluxProperties.class); WingtipsZipkinProperties zipkinProps = serverAppContext.getBean(WingtipsZipkinProperties.class); String[] someComponentScannedClassBeanNames = serverAppContext.getBeanNamesForType(SomeComponentScannedClass.class); List<SpanLifecycleListener> lifecycleListeners = Tracer.getInstance().getSpanLifecycleListeners(); // then // Sanity check that we component scanned (or not) as appropriate. if (componentTestSetup.expectComponentScannedObjects) { assertThat(someComponentScannedClassBeanNames).isNotEmpty(); } else { assertThat(someComponentScannedClassBeanNames).isEmpty(); } // WingtipsSpringBoot2WebfluxConfiguration, WingtipsWithZipkinSpringBoot2WebfluxConfiguration, // WingtipsSpringBoot2WebfluxProperties, and WingtipsZipkinProperties should be available as beans, and // the base config should use the same props we received. assertThat(baseConfig).isNotNull(); assertThat(baseProps).isNotNull(); assertThat(baseConfig).extracting("wingtipsProperties") .containsExactly(baseProps); assertThat(zipkinConfig).isNotNull(); assertThat(zipkinProps).isNotNull(); // Verify that a WingtipsToZipkinLifecycleListener was registered with Tracer. assertThat(lifecycleListeners).hasSize(1); SpanLifecycleListener listener = lifecycleListeners.get(0); assertThat(listener).isInstanceOf(WingtipsToZipkinLifecycleListener.class); // Verify the Zipkin Reporter override if expected. if (componentTestSetup.expectedReporterOverride != null) { assertThat(Whitebox.getInternalState(listener, "zipkinSpanReporter")) .isSameAs(ComponentTestMainWithReporterOverride.CUSTOM_REPORTER_INSTANCE); } // Verify the Wingtips-to-Zipkin converter override if expected. if (componentTestSetup.expectedConverterOverride != null) { assertThat(Whitebox.getInternalState(listener, "zipkinSpanConverter")) .isSameAs(ComponentTestMainWithConverterOverride.CUSTOM_CONVERTER_INSTANCE); } } finally { SpringApplication.exit(serverAppContext); } }
Example 3
Source File: WingtipsSpringBoot2WebfluxConfigurationTest.java From wingtips with Apache License 2.0 | 4 votes |
@DataProvider(value = { "MANUAL_IMPORT_ONLY", "COMPONENT_SCAN_ONLY", "BOTH_MANUAL_AND_COMPONENT_SCAN" }) @Test public void component_test(ComponentTestSetup componentTestSetup) { // given int serverPort = findFreePort(); Class<?> mainClass = componentTestSetup.mainClass; ConfigurableApplicationContext serverAppContext = SpringApplication.run(mainClass, "--server.port=" + serverPort); try { // when WingtipsSpringBoot2WebfluxConfiguration config = serverAppContext.getBean(WingtipsSpringBoot2WebfluxConfiguration.class); WingtipsSpringBoot2WebfluxProperties props = serverAppContext.getBean(WingtipsSpringBoot2WebfluxProperties.class); String[] someComponentScannedClassBeanNames = serverAppContext.getBeanNamesForType(SomeComponentScannedClass.class); // then // Sanity check that we component scanned (or not) as appropriate. if (componentTestSetup.expectComponentScannedObjects) { assertThat(someComponentScannedClassBeanNames).isNotEmpty(); } else { assertThat(someComponentScannedClassBeanNames).isEmpty(); } // WingtipsSpringBoot2WebfluxConfiguration and WingtipsSpringBoot2WebfluxProperties should be available as // beans, and the config should use the same props we received. assertThat(config).isNotNull(); assertThat(props).isNotNull(); assertThat(config.wingtipsProperties).isSameAs(props); // The config should not have any custom WingtipsSpringWebfluxWebFilter. Spring will populate // the config.customSpringWebfluxWebFilter field with whatever wingtipsSpringWebfluxWebFilter() // produces - so they should be the same. Map<String, WingtipsSpringWebfluxWebFilter> filtersFromSpring = serverAppContext.getBeansOfType(WingtipsSpringWebfluxWebFilter.class); assertThat(filtersFromSpring).isEqualTo( Collections.singletonMap("wingtipsSpringWebfluxWebFilter", config.customSpringWebfluxWebFilter) ); } finally { Schedulers.removeExecutorServiceDecorator(WingtipsReactorInitializer.WINGTIPS_SCHEDULER_KEY); SpringApplication.exit(serverAppContext); } }
Example 4
Source File: WingtipsSpringBoot2WebfluxConfigurationTest.java From wingtips with Apache License 2.0 | 4 votes |
@Test public void component_test_with_custom_WingtipsSpringWebfluxWebFilter() { // given int serverPort = findFreePort(); ConfigurableApplicationContext serverAppContext = SpringApplication.run( ComponentTestMainWithCustomWingtipsWebFilter.class, "--server.port=" + serverPort ); try { // when WingtipsSpringBoot2WebfluxConfiguration config = serverAppContext.getBean(WingtipsSpringBoot2WebfluxConfiguration.class); WingtipsSpringBoot2WebfluxProperties props = serverAppContext.getBean(WingtipsSpringBoot2WebfluxProperties.class); String[] someComponentScannedClassBeanNames = serverAppContext.getBeanNamesForType(SomeComponentScannedClass.class); // then // Sanity check that we component scanned (or not) as appropriate. This particular component test does // include component scanning. assertThat(someComponentScannedClassBeanNames).isNotEmpty(); // WingtipsSpringBoot2WebfluxConfiguration and WingtipsSpringBoot2WebfluxProperties should be available as // beans, and the config should use the same props we received. assertThat(config).isNotNull(); assertThat(props).isNotNull(); assertThat(config.wingtipsProperties).isSameAs(props); // Finally, the thing this test is verifying: the config's custom filter should be the same one from the // component test main class, and it should be the one that Spring exposes. assertThat(config.customSpringWebfluxWebFilter) .isSameAs(ComponentTestMainWithCustomWingtipsWebFilter.customFilter); Map<String, WingtipsSpringWebfluxWebFilter> filtersFromSpring = serverAppContext.getBeansOfType(WingtipsSpringWebfluxWebFilter.class); assertThat(filtersFromSpring).isEqualTo( Collections.singletonMap("customFilter", ComponentTestMainWithCustomWingtipsWebFilter.customFilter) ); } finally { SpringApplication.exit(serverAppContext); } }
Example 5
Source File: WingtipsWithZipkinSpringBootConfigurationTest.java From wingtips with Apache License 2.0 | 4 votes |
@DataProvider(value = { "MANUAL_IMPORT_ONLY", "COMPONENT_SCAN_ONLY", "BOTH_MANUAL_AND_COMPONENT_SCAN", "WITH_ZIPKIN_REPORTER_OVERRIDE", "WITH_CONVERTER_OVERRIDE", "WITH_BOTH_REPORTER_AND_CONVERTER_OVERRIDES" }) @Test public void component_test(ComponentTestSetup componentTestSetup) { // given int serverPort = findFreePort(); Class<?> mainClass = componentTestSetup.mainClass; ConfigurableApplicationContext serverAppContext = SpringApplication.run(mainClass, "--server.port=" + serverPort); try { // when WingtipsSpringBootConfiguration baseConfig = serverAppContext.getBean(WingtipsSpringBootConfiguration.class); WingtipsWithZipkinSpringBootConfiguration zipkinConfig = serverAppContext.getBean(WingtipsWithZipkinSpringBootConfiguration.class); WingtipsSpringBootProperties baseProps = serverAppContext.getBean(WingtipsSpringBootProperties.class); WingtipsZipkinProperties zipkinProps = serverAppContext.getBean(WingtipsZipkinProperties.class); String[] someComponentScannedClassBeanNames = serverAppContext.getBeanNamesForType(SomeComponentScannedClass.class); List<SpanLifecycleListener> lifecycleListeners = Tracer.getInstance().getSpanLifecycleListeners(); // then // Sanity check that we component scanned (or not) as appropriate. if (componentTestSetup.expectComponentScannedObjects) { assertThat(someComponentScannedClassBeanNames).isNotEmpty(); } else { assertThat(someComponentScannedClassBeanNames).isEmpty(); } // WingtipsSpringBootConfiguration, WingtipsWithZipkinSpringBootConfiguration, // WingtipsSpringBootProperties, and WingtipsZipkinProperties should be available as beans, and // the base config should use the same props we received. assertThat(baseConfig).isNotNull(); assertThat(baseProps).isNotNull(); assertThat(baseConfig).extracting("wingtipsProperties") .containsExactly(baseProps); assertThat(zipkinConfig).isNotNull(); assertThat(zipkinProps).isNotNull(); // Verify that a WingtipsToZipkinLifecycleListener was registered with Tracer. assertThat(lifecycleListeners).hasSize(1); SpanLifecycleListener listener = lifecycleListeners.get(0); assertThat(listener).isInstanceOf(WingtipsToZipkinLifecycleListener.class); // Verify the Zipkin Reporter override if expected. if (componentTestSetup.expectedReporterOverride != null) { assertThat(Whitebox.getInternalState(listener, "zipkinSpanReporter")) .isSameAs(ComponentTestMainWithReporterOverride.CUSTOM_REPORTER_INSTANCE); } // Verify the Wingtips-to-Zipkin converter override if expected. if (componentTestSetup.expectedConverterOverride != null) { assertThat(Whitebox.getInternalState(listener, "zipkinSpanConverter")) .isSameAs(ComponentTestMainWithConverterOverride.CUSTOM_CONVERTER_INSTANCE); } } finally { SpringApplication.exit(serverAppContext); } }