org.springframework.beans.factory.ListableBeanFactory#getBeansOfType ( )源码实例Demo

下面列出了org.springframework.beans.factory.ListableBeanFactory#getBeansOfType ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: foremast   文件: MeterRegistryPostProcessor.java
private MeterRegistryConfigurer getConfigurer() {
    if (this.configurer == null) {
        Collection<MeterBinder> meterBinders = Collections.emptyList();
        Collection<MeterFilter> meterFilters = Collections.emptyList();
        Collection<MeterRegistryCustomizer<?>> meterRegistryCustomizers = Collections.emptyList();
        MetricsProperties properties = beanFactory.getBean(MetricsProperties.class);
        if (beanFactory instanceof ListableBeanFactory) {
            ListableBeanFactory listableBeanFactory = (ListableBeanFactory)beanFactory;
            meterBinders = listableBeanFactory.getBeansOfType(MeterBinder.class).values();
            meterFilters = listableBeanFactory.getBeansOfType(MeterFilter.class).values();
            Map<String, MeterRegistryCustomizer> map = listableBeanFactory.getBeansOfType(MeterRegistryCustomizer.class);
            meterRegistryCustomizers = new ArrayList<>();
            for(MeterRegistryCustomizer c : map.values()) {
                meterRegistryCustomizers.add(c);
            }
        }
        this.configurer = new MeterRegistryConfigurer(
                meterBinders,
                meterFilters,
                meterRegistryCustomizers, properties.isUseGlobalRegistry());
    }
    return this.configurer;
}
 
源代码2 项目: foremast   文件: MeterRegistryPostProcessor.java
private MeterRegistryConfigurer getConfigurer() {
    if (this.configurer == null) {
        Collection<MeterBinder> meterBinders = Collections.emptyList();
        Collection<MeterFilter> meterFilters = Collections.emptyList();
        Collection<MeterRegistryCustomizer<?>> meterRegistryCustomizers = Collections.emptyList();
        MetricsProperties properties = beanFactory.getBean(MetricsProperties.class);
        if (beanFactory instanceof ListableBeanFactory) {
            ListableBeanFactory listableBeanFactory = (ListableBeanFactory)beanFactory;
            meterBinders = listableBeanFactory.getBeansOfType(MeterBinder.class).values();
            meterFilters = listableBeanFactory.getBeansOfType(MeterFilter.class).values();
            Map<String, MeterRegistryCustomizer> map = listableBeanFactory.getBeansOfType(MeterRegistryCustomizer.class);
            meterRegistryCustomizers = new ArrayList<>();
            for(MeterRegistryCustomizer c : map.values()) {
                meterRegistryCustomizers.add(c);
            }
        }
        this.configurer = new MeterRegistryConfigurer(
                meterBinders,
                meterFilters,
                meterRegistryCustomizers, properties.isUseGlobalRegistry());
    }
    return this.configurer;
}
 
源代码3 项目: spring-init   文件: ObjectUtils.java
public static <T> ObjectProvider<Map<String, T>> map(ListableBeanFactory beans,
		Class<T> type) {
	return new ObjectProvider<Map<String, T>>() {

		@Override
		public Map<String, T> getObject() throws BeansException {
			return beans.getBeansOfType(type);
		}

		@Override
		public Map<String, T> getObject(Object... args) throws BeansException {
			return getObject();
		}

		@Override
		public Map<String, T> getIfAvailable() throws BeansException {
			return getObject();
		}

		@Override
		public Map<String, T> getIfUnique() throws BeansException {
			return getObject();
		}
	};
}
 
private static void lookupCollectionByType(BeanFactory beanFactory) {
    if (beanFactory instanceof ListableBeanFactory) {
        ListableBeanFactory listableBeanFactory = (ListableBeanFactory) beanFactory;
        Map<String, User> users = listableBeanFactory.getBeansOfType(User.class);
        System.out.println("查找到的所有的 User 集合对象:" + users);
    }
}
 
private static void lookupCollectionByType(BeanFactory beanFactory) {
    if (beanFactory instanceof ListableBeanFactory) {
        ListableBeanFactory listableBeanFactory = (ListableBeanFactory) beanFactory;
        Map<String, User> users = listableBeanFactory.getBeansOfType(User.class);
        System.out.println("查找到的所有的 User 集合对象:" + users);
    }
}
 
源代码6 项目: geekbang-lessons   文件: DependencyLookupDemo.java
private static void lookupCollectionByType(BeanFactory beanFactory) {
    if (beanFactory instanceof ListableBeanFactory) {
        ListableBeanFactory listableBeanFactory = (ListableBeanFactory) beanFactory;
        Map<String, User> users = listableBeanFactory.getBeansOfType(User.class);
        System.out.println("查找到的所有的 User 集合对象:" + users);
    }
}
 
源代码7 项目: eclair   文件: BeanFactoryHelper.java
public <T> Map<String, T> collectToOrderedMap(ListableBeanFactory beanFactory, Class<T> clazz, List<T> orderedBeans) {
    Map<String, T> beansOfType = beanFactory.getBeansOfType(clazz);
    return orderedBeans.stream()
            .collect(toMap(
                    bean -> buildKey(beansOfType, bean),
                    identity(),
                    this::mergeBeans,
                    LinkedHashMap::new
            ));
}
 
源代码8 项目: eagle   文件: EagleBeanFactoryPostProcessor.java
private PropertySourcesPlaceholderConfigurer getSinglePropertySourcesPlaceholderConfigurer(DefaultListableBeanFactory beanFactory) {
    if (beanFactory instanceof ListableBeanFactory) {
        ListableBeanFactory listableBeanFactory = (ListableBeanFactory) beanFactory;
        Map<String, PropertySourcesPlaceholderConfigurer> beans = listableBeanFactory
                .getBeansOfType(PropertySourcesPlaceholderConfigurer.class, false,
                        false);
        if (beans.size() == 1) {
            return beans.values().iterator().next();
        }
    }
    return null;
}
 
源代码9 项目: joinfaces   文件: SpringBootBeanNameResolver.java
/**
 * Will ignore scoped proxy target bean names. https://github.com/ocpsoft/rewrite/issues/170
 *
 * @param beanFactory bean factory
 * @param clazz       type
 * @return set of bean names
 */
private Set<String> resolveBeanNames(ListableBeanFactory beanFactory, Class<?> clazz) {

	final Set<String> result = new HashSet<String>();

	Map<String, ?> beanMap = beanFactory.getBeansOfType(clazz);
	for (String name : beanMap.keySet()) {
		if (name != null && !name.startsWith("scopedTarget.")) {
			result.add(name);
		}
	}

	return result;

}
 
@SuppressWarnings({"rawtypes"})
private static Map<Class<?>, EntityResolver<?, ?>> loadEntityResolvers(
    ListableBeanFactory beanFactory) {
  Map<String, EntityResolver> entityServices = beanFactory.getBeansOfType(EntityResolver.class);
  Map<Class<?>, EntityResolver<?, ?>> entity2Resolver = new HashMap<>(entityServices.size());
  for (EntityResolver entityResolver : entityServices.values()) {
    entity2Resolver.put(entityResolver.getEntityType(), entityResolver);
  }
  return entity2Resolver;
}