Example usage for org.springframework.beans.factory BeanFactoryUtils transformedBeanName

List of usage examples for org.springframework.beans.factory BeanFactoryUtils transformedBeanName

Introduction

In this page you can find the example usage for org.springframework.beans.factory BeanFactoryUtils transformedBeanName.

Prototype

public static String transformedBeanName(String name) 

Source Link

Document

Return the actual bean name, stripping out the factory dereference prefix (if any, also stripping repeated factory prefixes if found).

Usage

From source file:org.lightadmin.core.config.bootstrap.RepositoriesFactoryBean.java

private Map<Class<?>, String> repositoryBeanNames(ListableBeanFactory beanFactory) {
    Map<Class<?>, String> repositoryBeanNames = newHashMap();
    for (String name : beanFactory.getBeanNamesForType(RepositoryFactoryInformation.class, false, false)) {
        RepositoryFactoryInformation repositoryFactoryInformation = beanFactory.getBean(name,
                RepositoryFactoryInformation.class);
        Class<?> userDomainType = ClassUtils
                .getUserClass(repositoryFactoryInformation.getRepositoryInformation().getDomainType());
        repositoryBeanNames.put(userDomainType, BeanFactoryUtils.transformedBeanName(name));
    }/*  w w  w.ja  v a 2  s. c o m*/
    return repositoryBeanNames;
}

From source file:org.springframework.beans.factory.support.AbstractBeanFactory.java

/**
 * Return the bean name, stripping out the factory dereference prefix if necessary,
 * and resolving aliases to canonical names.
 *//* ww  w.j ava 2  s  . co  m*/
protected String transformedBeanName(String name) {
    String beanName = BeanFactoryUtils.transformedBeanName(name);
    // Handle aliasing.
    synchronized (this.aliasMap) {
        String canonicalName = beanName;
        String resolvedName = null;
        do {
            resolvedName = (String) this.aliasMap.get(canonicalName);
            if (resolvedName != null) {
                canonicalName = resolvedName;
            }
        } while (resolvedName != null);
        return canonicalName;
    }
}

From source file:org.springframework.context.support.DefaultLifecycleProcessor.java

/**
 * Retrieve all applicable Lifecycle beans: all singletons that have already been created,
 * as well as all SmartLifecycle beans (even if they are marked as lazy-init).
 * @return the Map of applicable beans, with bean names as keys and bean instances as values
 *///from w  ww .  j  ava 2s .c o m
protected Map<String, Lifecycle> getLifecycleBeans() {
    ConfigurableListableBeanFactory beanFactory = getBeanFactory();
    Map<String, Lifecycle> beans = new LinkedHashMap<>();
    String[] beanNames = beanFactory.getBeanNamesForType(Lifecycle.class, false, false);
    for (String beanName : beanNames) {
        String beanNameToRegister = BeanFactoryUtils.transformedBeanName(beanName);
        boolean isFactoryBean = beanFactory.isFactoryBean(beanNameToRegister);
        String beanNameToCheck = (isFactoryBean ? BeanFactory.FACTORY_BEAN_PREFIX + beanName : beanName);
        if ((beanFactory.containsSingleton(beanNameToRegister)
                && (!isFactoryBean || matchesBeanType(Lifecycle.class, beanNameToCheck, beanFactory)))
                || matchesBeanType(SmartLifecycle.class, beanNameToCheck, beanFactory)) {
            Object bean = beanFactory.getBean(beanNameToCheck);
            if (bean != this && bean instanceof Lifecycle) {
                beans.put(beanNameToRegister, (Lifecycle) bean);
            }
        }
    }
    return beans;
}