Example usage for org.springframework.context ApplicationContext getParent

List of usage examples for org.springframework.context ApplicationContext getParent

Introduction

In this page you can find the example usage for org.springframework.context ApplicationContext getParent.

Prototype

@Nullable
ApplicationContext getParent();

Source Link

Document

Return the parent context, or null if there is no parent and this is the root of the context hierarchy.

Usage

From source file:org.helios.ember.web.spring.ParentInjector.java

/**
 * {@inheritDoc}//from  w  ww  .java2  s.  c  o  m
 * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
 */
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    log.info("WEB APP CTX:" + applicationContext + "\n\tType:" + applicationContext.getClass().getName());
    //((AbstractApplicationContext)applicationContext).setParent(Boot.APPCTX);      
    StringBuilder b = new StringBuilder("\nParent Beans:");
    for (String bean : applicationContext.getParent().getBeanDefinitionNames()) {
        b.append("\n\t").append(bean);
    }
    log.info(b);

}

From source file:org.solmix.runtime.support.spring.SpringContainer.java

/**
 * @param event/*w  ww. java  2  s. c  om*/
 */
protected void onApplicationEvent(ApplicationEvent event) {
    if (applicationContext == null) {
        return;
    }
    boolean doIt = false;
    ApplicationContext ac = applicationContext;
    while (ac != null && !doIt) {
        if (event.getSource() == ac) {
            doIt = true;
            break;
        }
        ac = ac.getParent();
    }
    if (doIt) {
        if (event instanceof ContextRefreshedEvent) {
            if (getStatus() != ContainerStatus.CREATED) {
                initialize();
            }
        } else if (event instanceof ContextClosedEvent) {
            // getBean(ContextLifeCycleManager.class).postShutdown();
        }
    }

}

From source file:edu.internet2.middleware.shibboleth.common.util.EventingMapBasedStorageService.java

/** {@inheritDoc} */
public void setApplicationContext(ApplicationContext ctx) {
    ApplicationContext rootContext = ctx;
    while (rootContext.getParent() != null) {
        rootContext = rootContext.getParent();
    }/*from  www  .ja  v  a 2  s  . c o m*/
    appCtx = rootContext;
}

From source file:org.solmix.runtime.support.spring.SpringBeanProvider.java

private Set<String> doGetBeanNamesOfType0(ApplicationContext context, Class<?> type) {

    Set<String> s = new LinkedHashSet<String>(Arrays.asList(context.getBeanNamesForType(type, false, false)));
    if (context.getParent() != null) {
        s.addAll(doGetBeanNamesOfType0(context.getParent(), type));
    }/*w  ww .  ja  v  a  2s  .c  om*/
    return s;
}

From source file:org.jasig.springframework.test.ServletPortletAwareTester.java

@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    logger.debug("{} - ApplicationContext is a {}", this.name, applicationContext.getClass());
    logger.debug("{} - ApplicationContext id is {}", this.name, applicationContext.getId());

    String contextIds = applicationContext.getId();
    ApplicationContext parent = applicationContext.getParent();
    if (parent != null) {
        while (parent != null) {
            contextIds = contextIds + " => " + parent.getId();
            parent = parent.getParent();
        }//from  w  ww. j  a v  a  2s. c  o m

        logger.debug("{} - ApplicationContext heirarchy is {}", this.name, contextIds);
    } else {
        logger.debug("{} - ApplicationContext has no parent", this.name);
    }
}

From source file:com.helpinput.spring.support.SourceFileMonitorListener.java

@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
    ContextHolder.beanRegistIntercpterHolder.register(new ProxybeanRegistInterceptor());

    ApplicationContext applicationContext = event.getApplicationContext();
    DefaultListableBeanFactory dlbf = (DefaultListableBeanFactory) ((AbstractApplicationContext) applicationContext)
            .getBeanFactory();//from ww w. ja  v a2s  .  c  o  m

    PropertyEditorRegister.registerProtertyEditor(dlbf, GLClassEditor.class);
    //get root applicationContext
    while (applicationContext.getParent() != null) {
        applicationContext = applicationContext.getParent();
    }

    if (monitor == null)
        monitor = new SourceFileMonitor(dirs, applicationContext);

    if (!monitor.isRunning()) {
        try {
            monitor.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

From source file:org.solmix.runtime.support.spring.SpringBeanProvider.java

private <T> T dogetBeanOfType0(ApplicationContext context, String name, Class<T> type) {
    T t = null;/*  ww w  . ja v  a 2s.  co m*/
    if (context != null) {
        t = type.cast(context.getBean(name, type));
        if (t == null && context.getParent() != null)
            t = dogetBeanOfType0(context.getParent(), name, type);
    }
    return t;
}

From source file:com.github.eddumelendez.autoconfigure.ldap.embedded.EmbeddedLdapAutoConfiguration.java

private void setPortProperty(ApplicationContext currentContext, int port) {
    if (currentContext instanceof ConfigurableApplicationContext) {
        MutablePropertySources sources = ((ConfigurableApplicationContext) currentContext).getEnvironment()
                .getPropertySources();//from   w ww. ja  v a  2 s . c om
        getLdapPorts(sources).put("local.ldap.port", port);
    }
    if (currentContext.getParent() != null) {
        setPortProperty(currentContext.getParent(), port);
    }
}

From source file:org.solmix.runtime.support.spring.SpringContainer.java

/**
 * {@inheritDoc}/* w  w  w .j a  v a2 s. c  o m*/
 * 
 * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
 */
@SuppressWarnings("rawtypes")
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    this.applicationContext = (AbstractApplicationContext) applicationContext;
    ApplicationListener listener = new ApplicationListener() {

        @Override
        public void onApplicationEvent(ApplicationEvent event) {
            SpringContainer.this.onApplicationEvent(event);
        }
    };
    this.applicationContext.addApplicationListener(listener);
    ApplicationContext ac = applicationContext.getParent();
    while (ac != null) {
        if (ac instanceof AbstractApplicationContext) {
            ((AbstractApplicationContext) ac).addApplicationListener(listener);
        }
        ac = ac.getParent();
    }
    setExtension(applicationContext.getClassLoader(), ClassLoader.class);
    setExtension(new SpringConfigurer(applicationContext), BeanConfigurer.class);
    //
    setExtension(applicationContext, ApplicationContext.class);
    //        setBean(new SpringConfigureUnitManager(), ConfigureUnitManager.class);
    ResourceManager m = getExtension(ResourceManager.class);
    m.addResourceResolver(new SpringResourceResolver(applicationContext));
    //at last add the spring bean provider.
    ConfiguredBeanProvider provider = getExtension(ConfiguredBeanProvider.class);
    if (!(provider instanceof SpringBeanProvider)) {
        setExtension(new SpringBeanProvider(applicationContext, this), ConfiguredBeanProvider.class);
    }
    if (getStatus() != ContainerStatus.CREATED) {
        initialize();
    }
}

From source file:org.solmix.runtime.support.spring.SpringBeanProvider.java

private <T> Collection<? extends T> _doGetBeansOfType(ApplicationContext context, Class<T> type) {
    if (context != null) {
        Set<String> s = new LinkedHashSet<String>(
                Arrays.asList(context.getBeanNamesForType(type, false, false)));
        s.removeAll(passThroughs);//from   w  w  w . j  a  va  2s .  c  o m
        List<T> lst = new LinkedList<T>();
        for (String n : s) {
            lst.add(type.cast(context.getBean(n, type)));
        }
        if (context.getParent() != null) {
            lst.addAll(_doGetBeansOfType(context.getParent(), type));
        }
        return lst;
    }
    return null;

}