org.springframework.context.support
Class StaticApplicationContext

java.lang.Object
  extended by org.springframework.core.io.DefaultResourceLoader
      extended by org.springframework.context.support.AbstractApplicationContext
          extended by org.springframework.context.support.GenericApplicationContext
              extended by org.springframework.context.support.StaticApplicationContext
All Implemented Interfaces:
BeanFactory, DisposableBean, HierarchicalBeanFactory, ListableBeanFactory, BeanDefinitionRegistry, ApplicationContext, ApplicationEventPublisher, ConfigurableApplicationContext, Lifecycle, MessageSource, AliasRegistry, ResourceLoader, ResourcePatternResolver
Direct Known Subclasses:
StaticPortletApplicationContext, StaticWebApplicationContext

public class StaticApplicationContext
extends GenericApplicationContext

ApplicationContext implementation which supports programmatic registration of beans and messages, rather than reading bean definitions from external configuration sources. Mainly useful for testing.

Author:
Rod Johnson, Juergen Hoeller
See Also:
registerSingleton(java.lang.String, java.lang.Class), registerPrototype(java.lang.String, java.lang.Class), GenericApplicationContext.registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition), AbstractApplicationContext.refresh()

Field Summary
 
Fields inherited from class org.springframework.context.support.AbstractApplicationContext
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
 
Fields inherited from interface org.springframework.context.ConfigurableApplicationContext
CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME
 
Fields inherited from interface org.springframework.beans.factory.BeanFactory
FACTORY_BEAN_PREFIX
 
Fields inherited from interface org.springframework.core.io.support.ResourcePatternResolver
CLASSPATH_ALL_URL_PREFIX
 
Fields inherited from interface org.springframework.core.io.ResourceLoader
CLASSPATH_URL_PREFIX
 
Constructor Summary
StaticApplicationContext()
          Create a new StaticApplicationContext.
StaticApplicationContext(ApplicationContext parent)
          Create a new StaticApplicationContext with the given parent.
 
Method Summary
 void addMessage(String code, Locale locale, String defaultMessage)
          Associate the given message with the given code.
 StaticMessageSource getStaticMessageSource()
          Return the internal StaticMessageSource used by this context.
 void registerPrototype(String name, Class clazz)
          Register a prototype bean with the underlying bean factory.
 void registerPrototype(String name, Class clazz, MutablePropertyValues pvs)
          Register a prototype bean with the underlying bean factory.
 void registerSingleton(String name, Class clazz)
          Register a singleton bean with the underlying bean factory.
 void registerSingleton(String name, Class clazz, MutablePropertyValues pvs)
          Register a singleton bean with the underlying bean factory.
 
Methods inherited from class org.springframework.context.support.GenericApplicationContext
cancelRefresh, closeBeanFactory, getBeanDefinition, getBeanFactory, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setId, setParent, setResourceLoader
 
Methods inherited from class org.springframework.context.support.AbstractApplicationContext
addApplicationListener, addBeanFactoryPostProcessor, addListener, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, start, stop, toString
 
Methods inherited from class org.springframework.core.io.DefaultResourceLoader
getClassLoader, getResourceByPath, setClassLoader
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.beans.factory.support.BeanDefinitionRegistry
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames
 
Methods inherited from interface org.springframework.core.AliasRegistry
getAliases
 
Methods inherited from interface org.springframework.core.io.ResourceLoader
getClassLoader
 

Constructor Detail

StaticApplicationContext

public StaticApplicationContext()
                         throws BeansException
Create a new StaticApplicationContext.

Throws:
BeansException
See Also:
registerSingleton(java.lang.String, java.lang.Class), registerPrototype(java.lang.String, java.lang.Class), GenericApplicationContext.registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition), AbstractApplicationContext.refresh()

StaticApplicationContext

public StaticApplicationContext(ApplicationContext parent)
                         throws BeansException
Create a new StaticApplicationContext with the given parent.

Throws:
BeansException
See Also:
registerSingleton(java.lang.String, java.lang.Class), registerPrototype(java.lang.String, java.lang.Class), GenericApplicationContext.registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition), AbstractApplicationContext.refresh()
Method Detail

getStaticMessageSource

public final StaticMessageSource getStaticMessageSource()
Return the internal StaticMessageSource used by this context. Can be used to register messages on it.

See Also:
addMessage(java.lang.String, java.util.Locale, java.lang.String)

registerSingleton

public void registerSingleton(String name,
                              Class clazz)
                       throws BeansException
Register a singleton bean with the underlying bean factory.

For more advanced needs, register with the underlying BeanFactory directly.

Throws:
BeansException
See Also:
GenericApplicationContext.getDefaultListableBeanFactory()

registerSingleton

public void registerSingleton(String name,
                              Class clazz,
                              MutablePropertyValues pvs)
                       throws BeansException
Register a singleton bean with the underlying bean factory.

For more advanced needs, register with the underlying BeanFactory directly.

Throws:
BeansException
See Also:
GenericApplicationContext.getDefaultListableBeanFactory()

registerPrototype

public void registerPrototype(String name,
                              Class clazz)
                       throws BeansException
Register a prototype bean with the underlying bean factory.

For more advanced needs, register with the underlying BeanFactory directly.

Throws:
BeansException
See Also:
GenericApplicationContext.getDefaultListableBeanFactory()

registerPrototype

public void registerPrototype(String name,
                              Class clazz,
                              MutablePropertyValues pvs)
                       throws BeansException
Register a prototype bean with the underlying bean factory.

For more advanced needs, register with the underlying BeanFactory directly.

Throws:
BeansException
See Also:
GenericApplicationContext.getDefaultListableBeanFactory()

addMessage

public void addMessage(String code,
                       Locale locale,
                       String defaultMessage)
Associate the given message with the given code.

Parameters:
code - lookup code
locale - locale message should be found within
defaultMessage - message associated with this lookup code
See Also:
getStaticMessageSource()