List of usage examples for org.springframework.context ConfigurableApplicationContext getId
@Nullable String getId();
From source file:com.example.config.BeanCountingApplicationListener.java
@SuppressWarnings("resource") @Override/*from w ww. j a v a2 s . c o m*/ public void onApplicationEvent(ApplicationReadyEvent event) { if (!event.getApplicationContext().equals(this.context)) { return; } int count = 0; ConfigurableApplicationContext context = event.getApplicationContext(); String id = context.getId(); List<String> names = new ArrayList<>(); while (context != null) { count += context.getBeanDefinitionCount(); names.addAll(Arrays.asList(context.getBeanDefinitionNames())); context = (ConfigurableApplicationContext) context.getParent(); } logger.info("Bean count: " + id + "=" + count); logger.debug("Bean names: " + id + "=" + names); try { logger.info("Class count: " + id + "=" + ManagementFactory.getClassLoadingMXBean().getTotalLoadedClassCount()); } catch (Exception e) { } }
From source file:at.ac.univie.isc.asio.spring.SpringContextFactoryTest.java
@Test public void should_assign_unique_ids() throws Exception { final ConfigurableApplicationContext first = subject.named("test"); final ConfigurableApplicationContext second = subject.named("test"); assertThat(first.getId(), not(equalTo(second.getId()))); }
From source file:guru.qas.martini.jmeter.config.MartiniSpringConfiguration.java
@Override public void testStarted() { synchronized (contextRef) { ConfigurableApplicationContext context = initializeContext(); ConfigurableApplicationContext previous = contextRef.getAndSet(context); if (null != previous) { previous.close();//from w w w. j av a 2 s . co m } String hostname = JMeterUtils.getLocalHostName(); String ip = JMeterUtils.getLocalHostIP(); String name = super.getName(); String id = context.getId(); long startupDate = context.getStartupDate(); String username = System.getProperty("user.name"); ConfigurableEnvironment environment = context.getEnvironment(); String[] activeProfiles = environment.getActiveProfiles(); ArrayList<String> profiles = Lists.newArrayList(activeProfiles); Map<String, String> environmentVariables = this.getEnvironmentProperties().getArgumentsAsMap(); SuiteIdentifier identifier = DefaultSuiteIdentifier.builder().setId(id).setStartupTimestamp(startupDate) .setName(name).setHostname(hostname).setHostAddress(ip).setUsername(username) .setProfiles(profiles).setEnvironmentVariables(environmentVariables).build(); ConfigurableListableBeanFactory beanFactory = context.getBeanFactory(); beanFactory.registerSingleton(BEAN_SUITE_IDENTIFIER, identifier); EventManager eventManager = context.getBean(EventManager.class); eventManager.publishBeforeSuite(this, identifier); } }
From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java
@Test public void testInitWithExistingApplicationContext() { ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class, "testInitWithExistingApplicationContext"); when(mockApplicationContext.isActive()).thenReturn(true); when(mockApplicationContext.getId()).thenReturn("testInitWithExistingApplicationContext"); SpringContextBootstrappingInitializer.applicationContext = mockApplicationContext; assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext()); SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer(); initializer.init(createParameters("test", "test")); verify(mockApplicationContext, never()) .addApplicationListener(any(SpringContextBootstrappingInitializer.class)); verify(mockApplicationContext, never()).registerShutdownHook(); verify(mockApplicationContext, never()).refresh(); assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext()); }
From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java
@Test public void testInitWhenApplicationContextIsNull() { assertNull(SpringContextBootstrappingInitializer.applicationContext); final ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class, "testInitWhenApplicationContextIsNull"); when(mockApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsNull"); when(mockApplicationContext.isRunning()).thenReturn(true); SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() { @Override// www . ja va 2s . c o m protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages, final String[] configLocations) { return mockApplicationContext; } }; initializer.init(createParameters(SpringContextBootstrappingInitializer.CONTEXT_CONFIG_LOCATIONS_PARAMETER, "/path/to/spring/application/context.xml")); verify(mockApplicationContext, times(1)).addApplicationListener(same(initializer)); verify(mockApplicationContext, times(1)).registerShutdownHook(); verify(mockApplicationContext, times(1)).refresh(); assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext()); }
From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java
@Test public void testInitWhenApplicationContextIsInactive() { ConfigurableApplicationContext mockInactiveApplicationContext = mock(ConfigurableApplicationContext.class, "testInitWhenApplicationContextIsInactive.Inactive"); when(mockInactiveApplicationContext.isActive()).thenReturn(false); SpringContextBootstrappingInitializer.applicationContext = mockInactiveApplicationContext; assertSame(mockInactiveApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext()); final ConfigurableApplicationContext mockNewApplicationContext = mock(ConfigurableApplicationContext.class, "testInitWhenApplicationContextIsInactive.New"); when(mockNewApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsInactive.New"); when(mockNewApplicationContext.isRunning()).thenReturn(true); SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() { @Override//from w w w. j a va 2 s . c om protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages, final String[] configLocations) { return mockNewApplicationContext; } }; initializer.init( createParameters(SpringContextBootstrappingInitializer.BASE_PACKAGES_PARAMETER, "org.example.app")); verify(mockNewApplicationContext, times(1)).addApplicationListener(same(initializer)); verify(mockNewApplicationContext, times(1)).registerShutdownHook(); verify(mockNewApplicationContext, times(1)).refresh(); assertSame(mockNewApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext()); }
From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java
@Test(expected = IllegalStateException.class) public void testInitWhenApplicationContextIsNotRunning() { assertNull(SpringContextBootstrappingInitializer.applicationContext); final ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class, "testInitWhenApplicationContextIsNotRunning"); when(mockApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsNotRunning"); when(mockApplicationContext.isRunning()).thenReturn(false); SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() { @Override// www. ja v a 2 s .co m protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages, final String[] configLocations) { return mockApplicationContext; } }; try { initializer.init(createParameters(SpringContextBootstrappingInitializer.BASE_PACKAGES_PARAMETER, "org.example.app, org.example.plugins")); SpringContextBootstrappingInitializer.getApplicationContext(); } catch (ApplicationContextException expected) { assertTrue(expected.getMessage().contains("Failed to bootstrap the Spring ApplicationContext!")); assertTrue(expected.getCause() instanceof IllegalStateException); assertEquals( "The Spring ApplicationContext (testInitWhenApplicationContextIsNotRunning) failed to be properly initialized with the context config files ([]) or base packages ([org.example.app, org.example.plugins])!", expected.getCause().getMessage()); throw (IllegalStateException) expected.getCause(); } finally { verify(mockApplicationContext, times(1)).addApplicationListener(same(initializer)); verify(mockApplicationContext, times(1)).registerShutdownHook(); verify(mockApplicationContext, times(1)).refresh(); assertNull(SpringContextBootstrappingInitializer.applicationContext); } }
From source file:org.springframework.samples.petclinic.system.BeanCountingApplicationListener.java
@SuppressWarnings("resource") @Override//www .j av a2 s .c o m public void onApplicationEvent(ContextRefreshedEvent event) { if (!event.getApplicationContext().equals(this.context)) { return; } int count = 0; ConfigurableApplicationContext context = (ConfigurableApplicationContext) event.getApplicationContext(); String id = context.getId(); List<String> names = new ArrayList<>(); while (context != null) { count += context.getBeanDefinitionCount(); names.addAll(Arrays.asList(context.getBeanDefinitionNames())); context = (ConfigurableApplicationContext) context.getParent(); } logger.info("Bean count: " + id + "=" + count); logger.debug("Bean names: " + id + "=" + names); try { logger.info("Class count: " + id + "=" + ManagementFactory.getClassLoadingMXBean().getTotalLoadedClassCount()); } catch (Exception e) { } }