Package org.springmodules.web.context

Source Code of org.springmodules.web.context.BeanFactoryLanguageContextLoader

package org.springmodules.web.context;

import java.util.Collection;

import javax.servlet.ServletContext;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.core.io.ClassPathResource;
import org.springframework.web.context.ContextLoader;
import org.springframework.web.context.WebApplicationContext;
import org.springmodules.beans.factory.bfl.parser.BFLUtils;
import org.springmodules.beans.factory.drivers.xml.XmlWebApplicationContextDriver;

public class BeanFactoryLanguageContextLoader extends ContextLoader {

  public static final String BFL_CONTEXT_CONFIG_LOCATION = "bflContextConfigLocation";
 
  public static final String CREATE_PARENT_WEB_APPLICATION_CONTEXT = "createParentWebApplicationContext";
 
  public BeanFactoryLanguageContextLoader() {
    super();
  }

  protected WebApplicationContext createWebApplicationContext(ServletContext servletContext, ApplicationContext parent) throws BeansException {
    ApplicationContext secondParent = null;
    String bflContextConfigLocation = servletContext.getInitParameter(BFL_CONTEXT_CONFIG_LOCATION);
    String createParentWebApplicationContext = servletContext.getInitParameter(CREATE_PARENT_WEB_APPLICATION_CONTEXT);
    Collection beanReferences = null;
   
    if (createParentWebApplicationContext != null && createParentWebApplicationContext.toLowerCase().equals("true")) {
      secondParent = super.createWebApplicationContext(servletContext, parent);
    } else {
      secondParent = parent;
    }
   
    if (bflContextConfigLocation != null) {
      beanReferences = BFLUtils.parse(new ClassPathResource(bflContextConfigLocation), secondParent);
    } else {
      beanReferences = BFLUtils.parse(new ClassPathResource("applicationContext.bfl"), secondParent);
    }
   
    return new XmlWebApplicationContextDriver().getWebApplicationContext(beanReferences, secondParent);
  }
}
TOP

Related Classes of org.springmodules.web.context.BeanFactoryLanguageContextLoader

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.