Example usage for org.springframework.beans.factory ListableBeanFactory getBeansOfType

List of usage examples for org.springframework.beans.factory ListableBeanFactory getBeansOfType

Introduction

In this page you can find the example usage for org.springframework.beans.factory ListableBeanFactory getBeansOfType.

Prototype

<T> Map<String, T> getBeansOfType(@Nullable Class<T> type) throws BeansException;

Source Link

Document

Return the bean instances that match the given object type (including subclasses), judging from either bean definitions or the value of getObjectType in the case of FactoryBeans.

Usage

From source file:com.dangdang.ddframe.reg.spring.placeholder.PlaceholderResolved.java

public PlaceholderResolved(final ListableBeanFactory beanFactory) {
    placeholderMap = beanFactory.getBeansOfType(PropertySourcesPlaceholderConfigurer.class);
}

From source file:com.payu.ratel.proxy.monitoring.ServiceInvocationHandler.java

public ServiceInvocationHandler(ListableBeanFactory beanFactory, Object object, Class<?> apiClass) {
    this.object = object;
    serviceListeners.addAll(beanFactory.getBeansOfType(ServiceInstanceCallListener.class).values());
    this.apiClass = apiClass;
}

From source file:com.easyjf.container.impl.SpringContainer.java

public Object getBean(Class type) {

    if (factory instanceof ListableBeanFactory) {
        ListableBeanFactory context = (ListableBeanFactory) factory;
        Map beans = context.getBeansOfType(type);
        if (beans != null && beans.size() > 0)
            return beans.values().iterator().next();
    }/*from  ww w  .j av a  2s . c o  m*/
    return null;
}

From source file:com.easyjf.container.impl.SpringContainer.java

public List getBeans(Class type) {
    List ret = null;//from   ww w . java 2  s  .  c  om
    if (factory instanceof ListableBeanFactory) {
        ListableBeanFactory context = (ListableBeanFactory) factory;
        Map beans = context.getBeansOfType(type);
        if (beans != null && beans.size() > 0)
            ret = new ArrayList(beans.values());
    }
    return ret;
}

From source file:se.trillian.goodies.spring.DomainObjectFactoryFactoryBeanTest.java

public void testCreateFactoryConstructor1() throws Exception {
    ListableBeanFactory beanFactory = (ListableBeanFactory) mock(ListableBeanFactory.class);
    beanFactory.getBeansOfType(A.class);
    Map<String, Object> beans = new HashMap<String, Object>();
    beans.put("a", new A());
    modify().returnValue(beans);/*from  w  ww.j a va 2s.  c om*/

    startVerification();

    factoryBean.afterPropertiesSet();
    factoryBean.setBeanFactory(beanFactory);
    Interface.Factory factory = (Interface.Factory) factoryBean.getObject();
    Implementation impl = (Implementation) factory.create("Hello world!!!");
    assertEquals("Hello world!!!", impl.s);
    assertThat(impl.dependency, is.instanceOf(A.class));
}

From source file:se.trillian.goodies.spring.DomainObjectFactoryFactoryBeanTest.java

public void testCreateFactoryConstructor2() throws Exception {
    ListableBeanFactory beanFactory = (ListableBeanFactory) mock(ListableBeanFactory.class);
    beanFactory.getBeansOfType(B.class);
    Map<String, Object> beans = new HashMap<String, Object>();
    beans.put("b", new B());
    modify().returnValue(beans);//w ww. j a va 2s . com

    startVerification();

    factoryBean.afterPropertiesSet();
    factoryBean.setBeanFactory(beanFactory);
    Interface.Factory factory = (Interface.Factory) factoryBean.getObject();
    Implementation impl = (Implementation) factory.create(1024);
    assertEquals(1024, impl.x);
    assertThat(impl.dependency, is.instanceOf(B.class));
}

From source file:se.trillian.goodies.spring.DomainObjectFactoryFactoryBeanTest.java

public void testCreateFactoryConstructor3() throws Exception {
    ListableBeanFactory beanFactory = (ListableBeanFactory) mock(ListableBeanFactory.class);
    beanFactory.getBeansOfType(C.class);
    Map<String, Object> beans = new HashMap<String, Object>();
    beans.put("c", new C());
    modify().returnValue(beans);/*from  w  w  w  .j  ava 2s. c  o m*/

    startVerification();

    factoryBean.afterPropertiesSet();
    factoryBean.setBeanFactory(beanFactory);
    Interface.Factory factory = (Interface.Factory) factoryBean.getObject();
    Implementation impl = (Implementation) factory.create(Math.PI);
    assertEquals(Math.PI, impl.u);
    assertThat(impl.dependency, is.instanceOf(C.class));
}

From source file:org.jboss.spring.support.SpringInjectionSupport.java

private Object getObjectFromBeanFactory(Spring spring, String defaultBeanName, Class<?> beanType)
        throws Exception {
    String jndiName = getJndiName(spring.jndiName());
    BeanFactory beanFactory = lookup(jndiName, BeanFactory.class);
    String beanName = spring.bean();
    if (beanName != null && beanName.length() > 0) {
        return beanFactory.getBean(beanName, beanType);
    } else {/*from   w w  w .  java2s.c  om*/
        // by type injection
        if (beanFactory instanceof ListableBeanFactory) {
            ListableBeanFactory lbf = (ListableBeanFactory) beanFactory;
            Map<?, ?> beans = lbf.getBeansOfType(beanType);
            if (beans.size() > 1) {
                Object bean = beans.get(defaultBeanName);
                if (bean == null) {
                    throw new IllegalArgumentException("More than one bean of type: " + beanType);
                }
                return bean;
            } else if (beans.size() == 1) {
                return beans.values().iterator().next();
            } else {
                throw new IllegalArgumentException("No such bean by type: " + beanType);
            }
        } else {
            // bean factory is not listable - use default bean name
            return beanFactory.getBean(defaultBeanName, beanType);
        }
    }
}

From source file:com.baidu.rigel.biplatform.tesseract.meta.impl.MetaDataServiceImpl.java

@Override
public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
    ListableBeanFactory listBeanFactory = (ListableBeanFactory) beanFactory;
    dimensionMemberServiceMap = listBeanFactory.getBeansOfType(DimensionMemberService.class);
}

From source file:org.sakaiproject.reports.logic.impl.ReportsManagerImpl.java

public ReportDefinition getReportDefBean(ListableBeanFactory beanFactory) {
    Map beanMap = beanFactory.getBeansOfType(ReportDefinition.class);
    for (Iterator i = beanMap.values().iterator(); i.hasNext();) {
        return (ReportDefinition) i.next();
    }//from w  w  w .j av  a  2  s.  c  o  m
    return null;
}