public abstract class AbstractRefreshableConfigApplicationContext extends AbstractRefreshableApplicationContext implements BeanNameAware, InitializingBean
AbstractRefreshableApplicationContext subclass that adds common handling
of specified config locations. Serves as base class for XML-based application
context implementations such as ClassPathXmlApplicationContext and
FileSystemXmlApplicationContext, as well as
XmlWebApplicationContext.setConfigLocation(java.lang.String),
setConfigLocations(java.lang.String...),
getDefaultConfigLocations()DefaultResourceLoader.ClassPathContextResourceAPPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMEAPPLICATION_STARTUP_BEAN_NAME, CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SHUTDOWN_HOOK_THREAD_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEFACTORY_BEAN_PREFIXCLASSPATH_ALL_URL_PREFIXCLASSPATH_URL_PREFIX| Constructor and Description |
|---|
AbstractRefreshableConfigApplicationContext()
Create a new AbstractRefreshableConfigApplicationContext with no parent.
|
AbstractRefreshableConfigApplicationContext(ApplicationContext parent)
Create a new AbstractRefreshableConfigApplicationContext with the given parent context.
|
| Modifier and Type | Method and Description |
|---|---|
void |
afterPropertiesSet()
Triggers
AbstractApplicationContext.refresh() if not refreshed in the concrete context's
constructor already. |
protected String[] |
getConfigLocations()
Return an array of resource locations, referring to the XML bean definition
files that this context should be built with.
|
protected String[] |
getDefaultConfigLocations()
Return the default config locations to use, for the case where no
explicit config locations have been specified.
|
protected String |
resolvePath(String path)
Resolve the given path, replacing placeholders with corresponding
environment property values if necessary.
|
void |
setBeanName(String name)
Sets the id of this context to the bean name by default,
for cases where the context instance is itself defined as a bean.
|
void |
setConfigLocation(String location)
Set the config locations for this application context in init-param style,
i.e.
|
void |
setConfigLocations(String... locations)
Set the config locations for this application context.
|
void |
setId(String id)
Set the unique id of this application context.
|
assertBeanFactoryActive, cancelRefresh, closeBeanFactory, createBeanFactory, customizeBeanFactory, getBeanFactory, hasBeanFactory, loadBeanDefinitions, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferencesaddApplicationListener, addBeanFactoryPostProcessor, close, containsBean, containsBeanDefinition, containsLocalBean, createEnvironment, destroy, destroyBeans, doClose, findAnnotationOnBean, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getApplicationStartup, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getResources, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, resetCommonCaches, setApplicationStartup, setDisplayName, setEnvironment, setParent, start, stop, toStringaddProtocolResolver, clearResourceCaches, getClassLoader, getProtocolResolvers, getResource, getResourceByPath, getResourceCache, setClassLoaderclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddProtocolResolver, setClassLoadergetClassLoader, getResourcepublic AbstractRefreshableConfigApplicationContext()
public AbstractRefreshableConfigApplicationContext(@Nullable ApplicationContext parent)
parent - the parent contextpublic void setConfigLocation(String location)
If not set, the implementation may use a default as appropriate.
public void setConfigLocations(@Nullable String... locations)
If not set, the implementation may use a default as appropriate.
@Nullable protected String[] getConfigLocations()
The default implementation returns null. Subclasses can override
this to provide a set of resource locations to load bean definitions from.
null if noneAbstractApplicationContext.getResources(java.lang.String),
AbstractApplicationContext.getResourcePatternResolver()@Nullable protected String[] getDefaultConfigLocations()
The default implementation returns null,
requiring explicit config locations.
setConfigLocations(java.lang.String...)protected String resolvePath(String path)
path - the original file pathPropertyResolver.resolveRequiredPlaceholders(String)public void setId(String id)
AbstractApplicationContextDefault is the object id of the context instance, or the name of the context bean if the context is itself defined as a bean.
setId in interface ConfigurableApplicationContextsetId in class AbstractApplicationContextid - the unique id of the contextpublic void setBeanName(String name)
setBeanName in interface BeanNameAwarename - the name of the bean in the factory.
Note that this name is the actual bean name used in the factory, which may
differ from the originally specified name: in particular for inner bean
names, the actual bean name might have been made unique through appending
"#..." suffixes. Use the BeanFactoryUtils.originalBeanName(String)
method to extract the original bean name (without suffix), if desired.public void afterPropertiesSet()
AbstractApplicationContext.refresh() if not refreshed in the concrete context's
constructor already.afterPropertiesSet in interface InitializingBean