Example usage for org.springframework.context.support GenericApplicationContext getDefaultListableBeanFactory

List of usage examples for org.springframework.context.support GenericApplicationContext getDefaultListableBeanFactory

Introduction

In this page you can find the example usage for org.springframework.context.support GenericApplicationContext getDefaultListableBeanFactory.

Prototype

public final DefaultListableBeanFactory getDefaultListableBeanFactory() 

Source Link

Document

Return the underlying bean factory of this context, available for registering bean definitions.

Usage

From source file:com.enonic.cms.server.service.portal.mvc.controller.XmlWebApplicationContextLoader.java

public final ConfigurableApplicationContext loadContext(String... locations) throws Exception {
    if (logger.isDebugEnabled()) {
        logger.debug("Loading ApplicationContext for locations ["
                + StringUtils.arrayToCommaDelimitedString(locations) + "].");
    }/*from www . j av  a2 s  . c om*/
    GenericApplicationContext context = new GenericWebApplicationContext();
    prepareContext(context);
    customizeBeanFactory(context.getDefaultListableBeanFactory());
    createBeanDefinitionReader(context).loadBeanDefinitions(locations);
    AnnotationConfigUtils.registerAnnotationConfigProcessors(context);
    customizeContext(context);
    context.refresh();
    context.registerShutdownHook();
    return context;
}

From source file:org.rosenvold.spring.convention.ConventionContextLoader.java

public final ConfigurableApplicationContext loadContext(String... locations) throws Exception {
    ConventionBeanFactory conventionBeanFactory = new ConventionBeanFactory(createNameToClassResolver(),
            createCandidateEvaluator());
    GenericApplicationContext context = new GenericApplicationContext(conventionBeanFactory);
    prepareContext(context);//from  w w  w  .  j  a v a  2  s .  c o m
    customizeBeanFactory(context.getDefaultListableBeanFactory());
    createBeanDefinitionReader(context).loadBeanDefinitions(locations);
    AnnotationConfigUtils.registerAnnotationConfigProcessors(context);
    customizeContext(context);
    context.refresh();
    context.registerShutdownHook();
    return context;
}

From source file:org.sakaiproject.test.SakaiDependencyInjectionTests.java

@Override
protected ConfigurableApplicationContext createApplicationContext(String[] locations) {
    if (log.isDebugEnabled())
        log.debug("createApplicationContext locations=" + Arrays.asList(locations));
    ComponentContainerEmulator.startComponentManagerForTest();
    ConfigurableApplicationContext componentContext = (ConfigurableApplicationContext) ComponentContainerEmulator
            .getContainerApplicationContext();

    // WARNING: Copied from the superclass! The only change is to add a 
    // parent application context to the application context constructor.
    GenericApplicationContext context = new GenericApplicationContext(componentContext);
    customizeBeanFactory(context.getDefaultListableBeanFactory());
    new XmlBeanDefinitionReader(context).loadBeanDefinitions(locations);
    context.refresh();/*w  ww .j  av a  2s  .co m*/

    return context;
}

From source file:org.springframework.test.context.support.AbstractGenericContextLoader.java

/**
 * Load a Spring ApplicationContext from the supplied {@link MergedContextConfiguration}.
 *
 * <p>Implementation details://from  w  w  w . j  a v  a 2 s .com
 *
 * <ul>
 * <li>Calls {@link #validateMergedContextConfiguration(MergedContextConfiguration)}
 * to allow subclasses to validate the supplied configuration before proceeding.</li>
 * <li>Creates a {@link GenericApplicationContext} instance.</li>
 * <li>If the supplied {@code MergedContextConfiguration} references a
 * {@linkplain MergedContextConfiguration#getParent() parent configuration},
 * the corresponding {@link MergedContextConfiguration#getParentApplicationContext()
 * ApplicationContext} will be retrieved and
 * {@linkplain GenericApplicationContext#setParent(ApplicationContext) set as the parent}
 * for the context created by this method.</li>
 * <li>Calls {@link #prepareContext(GenericApplicationContext)} for backwards
 * compatibility with the {@link org.springframework.test.context.ContextLoader
 * ContextLoader} SPI.</li>
 * <li>Calls {@link #prepareContext(ConfigurableApplicationContext, MergedContextConfiguration)}
 * to allow for customizing the context before bean definitions are loaded.</li>
 * <li>Calls {@link #customizeBeanFactory(DefaultListableBeanFactory)} to allow for customizing the
 * context's {@code DefaultListableBeanFactory}.</li>
 * <li>Delegates to {@link #loadBeanDefinitions(GenericApplicationContext, MergedContextConfiguration)}
 * to populate the context from the locations or classes in the supplied
 * {@code MergedContextConfiguration}.</li>
 * <li>Delegates to {@link AnnotationConfigUtils} for
 * {@link AnnotationConfigUtils#registerAnnotationConfigProcessors registering}
 * annotation configuration processors.</li>
 * <li>Calls {@link #customizeContext(GenericApplicationContext)} to allow for customizing the context
 * before it is refreshed.</li>
 * <li>Calls {@link #customizeContext(ConfigurableApplicationContext, MergedContextConfiguration)} to
 * allow for customizing the context before it is refreshed.</li>
 * <li>{@link ConfigurableApplicationContext#refresh Refreshes} the
 * context and registers a JVM shutdown hook for it.</li>
 * </ul>
 *
 * @return a new application context
 * @see org.springframework.test.context.SmartContextLoader#loadContext(MergedContextConfiguration)
 * @see GenericApplicationContext
 * @since 3.1
 */
@Override
public final ConfigurableApplicationContext loadContext(MergedContextConfiguration mergedConfig)
        throws Exception {
    if (logger.isDebugEnabled()) {
        logger.debug(String.format("Loading ApplicationContext for merged context configuration [%s].",
                mergedConfig));
    }

    validateMergedContextConfiguration(mergedConfig);

    GenericApplicationContext context = new GenericApplicationContext();

    ApplicationContext parent = mergedConfig.getParentApplicationContext();
    if (parent != null) {
        context.setParent(parent);
    }
    prepareContext(context);
    prepareContext(context, mergedConfig);
    customizeBeanFactory(context.getDefaultListableBeanFactory());
    loadBeanDefinitions(context, mergedConfig);
    AnnotationConfigUtils.registerAnnotationConfigProcessors(context);
    customizeContext(context);
    customizeContext(context, mergedConfig);
    context.refresh();
    context.registerShutdownHook();
    return context;
}

From source file:org.springframework.test.context.support.AbstractGenericContextLoader.java

/**
 * Load a Spring ApplicationContext from the supplied {@code locations}.
 *
 * <p>Implementation details:/*from  w ww  . j  ava  2  s.c om*/
 *
 * <ul>
 * <li>Creates a {@link GenericApplicationContext} instance.</li>
 * <li>Calls {@link #prepareContext(GenericApplicationContext)} to allow for customizing the context
 * before bean definitions are loaded.</li>
 * <li>Calls {@link #customizeBeanFactory(DefaultListableBeanFactory)} to allow for customizing the
 * context's {@code DefaultListableBeanFactory}.</li>
 * <li>Delegates to {@link #createBeanDefinitionReader(GenericApplicationContext)} to create a
 * {@link BeanDefinitionReader} which is then used to populate the context
 * from the specified locations.</li>
 * <li>Delegates to {@link AnnotationConfigUtils} for
 * {@link AnnotationConfigUtils#registerAnnotationConfigProcessors registering}
 * annotation configuration processors.</li>
 * <li>Calls {@link #customizeContext(GenericApplicationContext)} to allow for customizing the context
 * before it is refreshed.</li>
 * <li>{@link ConfigurableApplicationContext#refresh Refreshes} the
 * context and registers a JVM shutdown hook for it.</li>
 * </ul>
 *
 * <p><b>Note</b>: this method does not provide a means to set active bean definition
 * profiles for the loaded context. See {@link #loadContext(MergedContextConfiguration)}
 * and {@link AbstractContextLoader#prepareContext(ConfigurableApplicationContext, MergedContextConfiguration)}
 * for an alternative.
 *
 * @return a new application context
 * @see org.springframework.test.context.ContextLoader#loadContext
 * @see GenericApplicationContext
 * @see #loadContext(MergedContextConfiguration)
 * @since 2.5
 */
@Override
public final ConfigurableApplicationContext loadContext(String... locations) throws Exception {
    if (logger.isDebugEnabled()) {
        logger.debug(String.format("Loading ApplicationContext for locations [%s].",
                StringUtils.arrayToCommaDelimitedString(locations)));
    }
    GenericApplicationContext context = new GenericApplicationContext();
    prepareContext(context);
    customizeBeanFactory(context.getDefaultListableBeanFactory());
    createBeanDefinitionReader(context).loadBeanDefinitions(locations);
    AnnotationConfigUtils.registerAnnotationConfigProcessors(context);
    customizeContext(context);
    context.refresh();
    context.registerShutdownHook();
    return context;
}