Merge branch '1.5.x' into 2.0.x

This commit is contained in:
Andy Wilkinson 2019-03-11 15:27:15 +00:00
commit 361437f4e2
22 changed files with 69 additions and 24 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -28,6 +28,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandi
import org.springframework.boot.autoconfigure.condition.NoneNestedConditions; import org.springframework.boot.autoconfigure.condition.NoneNestedConditions;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Conditional; import org.springframework.context.annotation.Conditional;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Primary;
/** /**
@ -35,6 +36,7 @@ import org.springframework.context.annotation.Primary;
* *
* @author Andy Wilkinson * @author Andy Wilkinson
*/ */
@Configuration
@Conditional(MultipleNonPrimaryMeterRegistriesCondition.class) @Conditional(MultipleNonPrimaryMeterRegistriesCondition.class)
class CompositeMeterRegistryConfiguration { class CompositeMeterRegistryConfiguration {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -24,6 +24,7 @@ import org.springframework.boot.actuate.scheduling.ScheduledTasksEndpoint;
import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -60,6 +61,7 @@ public class ScheduledTasksEndpointAutoConfigurationTests {
.hasBean("customEndpoint")); .hasBean("customEndpoint"));
} }
@Configuration
private static class CustomEndpointConfiguration { private static class CustomEndpointConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -91,6 +91,7 @@ public abstract class AbstractEndpointRequestIntegrationTests {
return "Basic " + Base64.getEncoder().encodeToString("user:password".getBytes()); return "Basic " + Base64.getEncoder().encodeToString("user:password".getBytes());
} }
@Configuration
static class BaseConfiguration { static class BaseConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -22,6 +22,7 @@ import org.springframework.boot.autoconfigure.web.servlet.DispatcherServletPath;
import org.springframework.boot.test.context.runner.WebApplicationContextRunner; import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
import org.springframework.boot.web.servlet.filter.OrderedRequestContextFilter; import org.springframework.boot.web.servlet.filter.OrderedRequestContextFilter;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextListener; import org.springframework.web.context.request.RequestContextListener;
import org.springframework.web.filter.RequestContextFilter; import org.springframework.web.filter.RequestContextFilter;
@ -72,6 +73,7 @@ public class WebMvcEndpointChildContextConfigurationTests {
.isEqualTo("/")); .isEqualTo("/"));
} }
@Configuration
static class ExistingConfig { static class ExistingConfig {
@Bean @Bean
@ -81,6 +83,7 @@ public class WebMvcEndpointChildContextConfigurationTests {
} }
@Configuration
static class RequestContextListenerConfig { static class RequestContextListenerConfig {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -114,6 +114,7 @@ public class WebMvcMetricsIntegrationTests {
"http.server.requests", true); "http.server.requests", true);
} }
@Configuration
@RestController @RestController
@RequestMapping("/api") @RequestMapping("/api")
@Timed @Timed

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -28,6 +28,7 @@ import org.springframework.boot.actuate.scheduling.ScheduledTasksEndpoint.FixedR
import org.springframework.boot.actuate.scheduling.ScheduledTasksEndpoint.ScheduledTasksReport; import org.springframework.boot.actuate.scheduling.ScheduledTasksEndpoint.ScheduledTasksReport;
import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.scheduling.annotation.SchedulingConfigurer; import org.springframework.scheduling.annotation.SchedulingConfigurer;
@ -141,6 +142,7 @@ public class ScheduledTasksEndpointTests {
.accept(context.getBean(ScheduledTasksEndpoint.class).scheduledTasks())); .accept(context.getBean(ScheduledTasksEndpoint.class).scheduledTasks()));
} }
@Configuration
@EnableScheduling @EnableScheduling
private static class BaseConfiguration { private static class BaseConfiguration {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -26,6 +26,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DatabaseDriver; import org.springframework.boot.jdbc.DatabaseDriver;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
/** /**
@ -46,6 +47,7 @@ abstract class DataSourceConfiguration {
/** /**
* Tomcat Pool DataSource configuration. * Tomcat Pool DataSource configuration.
*/ */
@Configuration
@ConditionalOnClass(org.apache.tomcat.jdbc.pool.DataSource.class) @ConditionalOnClass(org.apache.tomcat.jdbc.pool.DataSource.class)
@ConditionalOnMissingBean(DataSource.class) @ConditionalOnMissingBean(DataSource.class)
@ConditionalOnProperty(name = "spring.datasource.type", havingValue = "org.apache.tomcat.jdbc.pool.DataSource", matchIfMissing = true) @ConditionalOnProperty(name = "spring.datasource.type", havingValue = "org.apache.tomcat.jdbc.pool.DataSource", matchIfMissing = true)
@ -72,6 +74,7 @@ abstract class DataSourceConfiguration {
/** /**
* Hikari DataSource configuration. * Hikari DataSource configuration.
*/ */
@Configuration
@ConditionalOnClass(HikariDataSource.class) @ConditionalOnClass(HikariDataSource.class)
@ConditionalOnMissingBean(DataSource.class) @ConditionalOnMissingBean(DataSource.class)
@ConditionalOnProperty(name = "spring.datasource.type", havingValue = "com.zaxxer.hikari.HikariDataSource", matchIfMissing = true) @ConditionalOnProperty(name = "spring.datasource.type", havingValue = "com.zaxxer.hikari.HikariDataSource", matchIfMissing = true)
@ -93,6 +96,7 @@ abstract class DataSourceConfiguration {
/** /**
* DBCP DataSource configuration. * DBCP DataSource configuration.
*/ */
@Configuration
@ConditionalOnClass(org.apache.commons.dbcp2.BasicDataSource.class) @ConditionalOnClass(org.apache.commons.dbcp2.BasicDataSource.class)
@ConditionalOnMissingBean(DataSource.class) @ConditionalOnMissingBean(DataSource.class)
@ConditionalOnProperty(name = "spring.datasource.type", havingValue = "org.apache.commons.dbcp2.BasicDataSource", matchIfMissing = true) @ConditionalOnProperty(name = "spring.datasource.type", havingValue = "org.apache.commons.dbcp2.BasicDataSource", matchIfMissing = true)
@ -111,6 +115,7 @@ abstract class DataSourceConfiguration {
/** /**
* Generic DataSource configuration. * Generic DataSource configuration.
*/ */
@Configuration
@ConditionalOnMissingBean(DataSource.class) @ConditionalOnMissingBean(DataSource.class)
@ConditionalOnProperty(name = "spring.datasource.type") @ConditionalOnProperty(name = "spring.datasource.type")
static class Generic { static class Generic {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -75,6 +75,7 @@ abstract class ReactiveWebServerFactoryConfiguration {
} }
@Configuration
@ConditionalOnMissingBean(ReactiveWebServerFactory.class) @ConditionalOnMissingBean(ReactiveWebServerFactory.class)
@ConditionalOnClass({ Undertow.class }) @ConditionalOnClass({ Undertow.class })
static class EmbeddedUndertow { static class EmbeddedUndertow {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -311,6 +311,7 @@ public class BatchAutoConfigurationTests {
} }
@Configuration
@EnableBatchProcessing @EnableBatchProcessing
protected static class NamedJobConfigurationWithRegisteredJob { protected static class NamedJobConfigurationWithRegisteredJob {
@ -352,6 +353,7 @@ public class BatchAutoConfigurationTests {
} }
@Configuration
@EnableBatchProcessing @EnableBatchProcessing
protected static class NamedJobConfigurationWithLocalJob { protected static class NamedJobConfigurationWithLocalJob {
@ -383,6 +385,7 @@ public class BatchAutoConfigurationTests {
} }
@Configuration
@EnableBatchProcessing @EnableBatchProcessing
protected static class JobConfiguration { protected static class JobConfiguration {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -33,6 +33,7 @@ import org.springframework.boot.autoconfigure.jndi.TestableInitialContextFactory
import org.springframework.boot.test.util.TestPropertyValues; import org.springframework.boot.test.util.TestPropertyValues;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jmx.export.MBeanExporter; import org.springframework.jmx.export.MBeanExporter;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -161,7 +162,8 @@ public class JndiDataSourceAutoConfigurationTests {
TestableInitialContextFactory.bind(name, dataSource); TestableInitialContextFactory.bind(name, dataSource);
} }
private static class MBeanExporterConfiguration { @Configuration
static class MBeanExporterConfiguration {
@Bean @Bean
MBeanExporter mbeanExporter() { MBeanExporter mbeanExporter() {
@ -170,7 +172,8 @@ public class JndiDataSourceAutoConfigurationTests {
} }
private static class AnotherMBeanExporterConfiguration { @Configuration
static class AnotherMBeanExporterConfiguration {
@Bean @Bean
MBeanExporter anotherMbeanExporter() { MBeanExporter anotherMbeanExporter() {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -28,6 +28,7 @@ import org.junit.Test;
import org.springframework.boot.test.util.TestPropertyValues; import org.springframework.boot.test.util.TestPropertyValues;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.annotation.KafkaListener; import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.kafka.core.DefaultKafkaProducerFactory; import org.springframework.kafka.core.DefaultKafkaProducerFactory;
import org.springframework.kafka.core.KafkaTemplate; import org.springframework.kafka.core.KafkaTemplate;
@ -97,6 +98,7 @@ public class KafkaAutoConfigurationIntegrationTests {
return applicationContext; return applicationContext;
} }
@Configuration
public static class KafkaConfig { public static class KafkaConfig {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -354,6 +354,7 @@ public class MultipartAutoConfigurationTests {
} }
@Configuration
public static class WebServerWithCustomMultipartResolver { public static class WebServerWithCustomMultipartResolver {
@Bean @Bean
@ -363,6 +364,7 @@ public class MultipartAutoConfigurationTests {
} }
@Configuration
public static class ContainerWithCommonsMultipartResolver { public static class ContainerWithCommonsMultipartResolver {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -75,6 +75,7 @@ public class WebSocketServletAutoConfigurationTests {
} }
@Configuration
static class CommonConfiguration { static class CommonConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -128,6 +128,7 @@ public class HttpTunnelIntegrationTests {
} }
@Configuration
static class TunnelConfiguration { static class TunnelConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -34,12 +34,14 @@ import org.apache.catalina.startup.Tomcat;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.servlet.ServletContextInitializer; import org.springframework.boot.web.servlet.ServletContextInitializer;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/** /**
* Example configuration for custom context path in Cloud Foundry. * Example configuration for custom context path in Cloud Foundry.
* *
* @author Johnny Lim * @author Johnny Lim
*/ */
@Configuration
public class CloudFoundryCustomContextPathExample { public class CloudFoundryCustomContextPathExample {
// tag::configuration[] // tag::configuration[]

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -18,6 +18,7 @@ package org.springframework.boot.docs.web.security;
import org.springframework.boot.autoconfigure.security.reactive.PathRequest; import org.springframework.boot.autoconfigure.security.reactive.PathRequest;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.web.server.ServerHttpSecurity; import org.springframework.security.config.web.server.ServerHttpSecurity;
import org.springframework.security.web.server.SecurityWebFilterChain; import org.springframework.security.web.server.SecurityWebFilterChain;
@ -26,6 +27,7 @@ import org.springframework.security.web.server.SecurityWebFilterChain;
* *
* @author Madhura Bhave * @author Madhura Bhave
*/ */
@Configuration
public class CustomWebFluxSecurityExample { public class CustomWebFluxSecurityExample {
// @formatter:off // @formatter:off

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -25,6 +25,7 @@ import org.junit.rules.ExpectedException;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Import;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.ContextCustomizer;
@ -133,6 +134,7 @@ public class ImportsContextCustomizerFactoryTests {
} }
@Configuration
@Import(ImportedBean.class) @Import(ImportedBean.class)
static class TestWithImportAndBeanMethod { static class TestWithImportAndBeanMethod {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -226,6 +226,7 @@ public class BeanCurrentlyInCreationFailureAnalyzerTests {
return new BeanOne(); return new BeanOne();
} }
@org.springframework.context.annotation.Configuration
public static class BeanTwoConfiguration { public static class BeanTwoConfiguration {
@SuppressWarnings("unused") @SuppressWarnings("unused")
@ -239,6 +240,7 @@ public class BeanCurrentlyInCreationFailureAnalyzerTests {
} }
@org.springframework.context.annotation.Configuration
public static class BeanThreeConfiguration { public static class BeanThreeConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -24,6 +24,7 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
import org.springframework.boot.diagnostics.FailureAnalysis; import org.springframework.boot.diagnostics.FailureAnalysis;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -60,6 +61,7 @@ public class InvalidConfigurationPropertyNameFailureAnalyzerTests {
} }
} }
@Configuration
@EnableConfigurationProperties(InvalidPrefixProperties.class) @EnableConfigurationProperties(InvalidPrefixProperties.class)
static class InvalidPrefixConfiguration { static class InvalidPrefixConfiguration {

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -153,6 +153,7 @@ public class NoUniqueBeanDefinitionFailureAnalyzerTests {
} }
@Configuration
static class ParentProducer { static class ParentProducer {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2017 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -29,6 +29,7 @@ import org.junit.Test;
import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -63,6 +64,7 @@ public class ServletContextInitializerBeansTests {
this.context = new AnnotationConfigApplicationContext(configuration); this.context = new AnnotationConfigApplicationContext(configuration);
} }
@Configuration
static class ServletConfiguration { static class ServletConfiguration {
@Bean @Bean
@ -72,6 +74,7 @@ public class ServletContextInitializerBeansTests {
} }
@Configuration
static class FilterConfiguration { static class FilterConfiguration {
@Bean @Bean

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -24,6 +24,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.channel.DirectChannel;
import org.springframework.integration.dsl.IntegrationFlow; import org.springframework.integration.dsl.IntegrationFlow;
import org.springframework.integration.dsl.IntegrationFlows; import org.springframework.integration.dsl.IntegrationFlows;
@ -41,6 +42,7 @@ public class SampleParentContextApplication {
.child(SampleParentContextApplication.class).run(args); .child(SampleParentContextApplication.class).run(args);
} }
@Configuration
@EnableAutoConfiguration @EnableAutoConfiguration
protected static class Parent { protected static class Parent {