Package org.springframework.boot
Interface ApplicationContextFactory
- Functional Interface:
 - This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
 
Strategy interface for creating the 
ConfigurableApplicationContext used by a
 SpringApplication. Created contexts should be returned in their default form,
 with the SpringApplication responsible for configuring and refreshing the
 context.- Since:
 - 2.4.0
 
- 
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ApplicationContextFactoryA defaultApplicationContextFactoryimplementation that will create an appropriate context for theWebApplicationType. - 
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.context.ConfigurableApplicationContextcreate(WebApplicationType webApplicationType) default org.springframework.core.env.ConfigurableEnvironmentcreateEnvironment(WebApplicationType webApplicationType) Create a newEnvironmentto be set on thecreatedapplication context.default Class<? extends org.springframework.core.env.ConfigurableEnvironment>getEnvironmentType(WebApplicationType webApplicationType) Return theEnvironmenttype expected to be set on thecreatedapplication context.static ApplicationContextFactoryCreates anApplicationContextFactorythat will create contexts by calling the givenSupplier.static ApplicationContextFactoryofContextClass(Class<? extends org.springframework.context.ConfigurableApplicationContext> contextClass) Creates anApplicationContextFactorythat will create contexts by instantiating the givencontextClassthrough its primary constructor. 
- 
Field Details
- 
DEFAULT
A defaultApplicationContextFactoryimplementation that will create an appropriate context for theWebApplicationType. 
 - 
 - 
Method Details
- 
getEnvironmentType
default Class<? extends org.springframework.core.env.ConfigurableEnvironment> getEnvironmentType(WebApplicationType webApplicationType) Return theEnvironmenttype expected to be set on thecreatedapplication context. The result of this method can be used to convert an existing environment instance to the correct type.- Parameters:
 webApplicationType- the web application type- Returns:
 - the expected application context type or 
nullto use the default - Since:
 - 2.6.14
 
 - 
createEnvironment
default org.springframework.core.env.ConfigurableEnvironment createEnvironment(WebApplicationType webApplicationType) Create a newEnvironmentto be set on thecreatedapplication context. The result of this method must match the type returned bygetEnvironmentType(WebApplicationType).- Parameters:
 webApplicationType- the web application type- Returns:
 - an environment instance or 
nullto use the default - Since:
 - 2.6.14
 
 - 
create
org.springframework.context.ConfigurableApplicationContext create(WebApplicationType webApplicationType) - Parameters:
 webApplicationType- the web application type- Returns:
 - the newly created application context
 
 - 
ofContextClass
static ApplicationContextFactory ofContextClass(Class<? extends org.springframework.context.ConfigurableApplicationContext> contextClass) Creates anApplicationContextFactorythat will create contexts by instantiating the givencontextClassthrough its primary constructor.- Parameters:
 contextClass- the context class- Returns:
 - the factory that will instantiate the context class
 - See Also:
 - 
BeanUtils.instantiateClass(Class)
 
 - 
of
static ApplicationContextFactory of(Supplier<org.springframework.context.ConfigurableApplicationContext> supplier) Creates anApplicationContextFactorythat will create contexts by calling the givenSupplier.- Parameters:
 supplier- the context supplier, for exampleAnnotationConfigApplicationContext::new- Returns:
 - the factory that will instantiate the context class
 
 
 -