Example usage for org.springframework.context.annotation ScannedGenericBeanDefinition setBeanClass

List of usage examples for org.springframework.context.annotation ScannedGenericBeanDefinition setBeanClass

Introduction

In this page you can find the example usage for org.springframework.context.annotation ScannedGenericBeanDefinition setBeanClass.

Prototype

public void setBeanClass(@Nullable Class<?> beanClass) 

Source Link

Document

Specify the class for this bean.

Usage

From source file:com.longio.spring.LongioBeanFactoryPostProcessor.java

private void registerLioDefinition(ConfigurableListableBeanFactory beanFactory, BeanDefinition beanDefinition) {
    final String LioClassName = beanDefinition.getBeanClassName();
    MutablePropertyValues propertyValues = beanDefinition.getPropertyValues();
    /*//from w  w  w.j av  a 2 s. c  om
     * ?? MongoFactoryBean ??
     */
    propertyValues.addPropertyValue("objectType", LioClassName);
    propertyValues.addPropertyValue("connector", getConnector((DefaultListableBeanFactory) beanFactory));
    propertyValues.addPropertyValue("appLookup", appLookup);
    propertyValues.addPropertyValue("cmdLookup", cmdLookup);

    ScannedGenericBeanDefinition scannedBeanDefinition = (ScannedGenericBeanDefinition) beanDefinition;
    scannedBeanDefinition.setPropertyValues(propertyValues);
    scannedBeanDefinition.setBeanClass(LioFactoryBean.class);

    DefaultListableBeanFactory defaultBeanFactory = (DefaultListableBeanFactory) beanFactory;
    defaultBeanFactory.registerBeanDefinition(LioClassName, beanDefinition);

    if (logger.isDebugEnabled()) {
        logger.debug("[Lio] register Lio: " + LioClassName);
    }
}

From source file:com.laxser.blitz.lama.core.LamaDaoProcessor.java

@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
    if (logger.isInfoEnabled()) {
        logger.info("[jade] starting ...");
    }/* w ww  .  j  ava2s .  co m*/
    final List<ResourceRef> resources;
    try {
        resources = BlitzScanner.getInstance().getJarOrClassesFolderResources();
    } catch (IOException e) {
        throw new ApplicationContextException("error on getJarResources/getClassesFolderResources", e);
    }
    List<String> urls = new LinkedList<String>();
    for (ResourceRef resourceInfo : resources) {
        if (resourceInfo.hasModifier("dao") || resourceInfo.hasModifier("DAO")) {
            try {
                Resource resource = resourceInfo.getResource();
                File resourceFile = resource.getFile();
                if (resourceFile.isFile()) {
                    urls.add("jar:file:" + resourceFile.toURI().getPath() + ResourceUtils.JAR_URL_SEPARATOR);
                } else if (resourceFile.isDirectory()) {
                    urls.add(resourceFile.toURI().toString());
                }
            } catch (IOException e) {
                throw new ApplicationContextException("error on resource.getFile", e);
            }
        }
    }

    if (logger.isInfoEnabled()) {
        logger.info("[jade] found " + urls.size() + " jade urls: " + urls);
    }
    if (urls.size() > 0) {
        LamaDaoComponentProvider provider = new LamaDaoComponentProvider(true);
        if (filters != null) {
            for (TypeFilter excludeFilter : filters) {
                provider.addExcludeFilter(excludeFilter);
            }
        }

        final DataAccessProvider dataAccessProvider = createJdbcTemplateDataAccessProvider();

        Set<String> daoClassNames = new HashSet<String>();

        for (String url : urls) {
            if (logger.isInfoEnabled()) {
                logger.info("[jade] call 'jade/find'");
            }
            Set<BeanDefinition> dfs = provider.findCandidateComponents(url);
            if (logger.isInfoEnabled()) {
                logger.info("[jade] found " + dfs.size()//
                        + " beanDefinition from '" + url + "'");
            }
            for (BeanDefinition beanDefinition : dfs) {
                String daoClassName = beanDefinition.getBeanClassName();

                if (daoClassNames.contains(daoClassName)) {
                    if (logger.isDebugEnabled()) {
                        logger.debug("[jade] ignored replicated jade dao class: " + daoClassName + "  [" + url
                                + "]");
                    }
                    continue;
                }
                daoClassNames.add(daoClassName);

                MutablePropertyValues propertyValues = beanDefinition.getPropertyValues();
                propertyValues.addPropertyValue("dataAccessProvider", dataAccessProvider);
                propertyValues.addPropertyValue("daoClass", daoClassName);
                ScannedGenericBeanDefinition scannedBeanDefinition = (ScannedGenericBeanDefinition) beanDefinition;
                scannedBeanDefinition.setPropertyValues(propertyValues);
                scannedBeanDefinition.setBeanClass(LamaDaoFactoryBean.class);

                DefaultListableBeanFactory defaultBeanFactory = (DefaultListableBeanFactory) beanFactory;
                defaultBeanFactory.registerBeanDefinition(daoClassName, beanDefinition);

                if (logger.isDebugEnabled()) {
                    logger.debug("[jade] register jade dao bean: " + daoClassName);
                }
            }
        }
    }
    if (logger.isInfoEnabled()) {
        logger.info("[jade] exits");
    }
}

From source file:com.longio.spring.LioBootstrap.java

private void registerLioDefinition(ConfigurableListableBeanFactory beanFactory, BeanDefinition beanDefinition) {
    final String LioClassName = beanDefinition.getBeanClassName();
    MutablePropertyValues propertyValues = beanDefinition.getPropertyValues();
    /*//from ww  w.  j  ava  2s  . co  m
     * ?? MongoFactoryBean ??
     */
    propertyValues.addPropertyValue("objectType", LioClassName);

    ScannedGenericBeanDefinition scannedBeanDefinition = (ScannedGenericBeanDefinition) beanDefinition;
    scannedBeanDefinition.setPropertyValues(propertyValues);
    scannedBeanDefinition.setBeanClass(LioFactoryBean.class);
    scannedBeanDefinition.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_BY_TYPE);

    DefaultListableBeanFactory defaultBeanFactory = (DefaultListableBeanFactory) beanFactory;
    defaultBeanFactory.registerBeanDefinition(LioClassName, beanDefinition);
}

From source file:net.paoding.rose.jade.context.spring.JadeBeanFactoryPostProcessor.java

@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
    String postProcessor = System.getProperty("jade.spring.postProcessor");
    if ("disable".equals(postProcessor)) {
        logger.info("jade.spring.postProcessor: disable");
        return;//from   w ww.  java2 s.  co m
    } else if (postProcessor == null || "enable".equals(postProcessor)) {
        logger.info("jade.spring.postProcessor: enable");
    } else {
        throw new IllegalArgumentException(//
                "illegal property of 'jade.spring.postProcessor': " + postProcessor);
    }
    if (logger.isInfoEnabled()) {
        logger.info("[jade] starting ...");
    }
    final List<ResourceRef> resources;
    try {
        // scope
        resources = RoseScanner.getInstance().getJarOrClassesFolderResources();
    } catch (IOException e) {
        throw new ApplicationContextException("error on getJarResources/getClassesFolderResources", e);
    }
    List<String> urls = new LinkedList<String>();
    for (ResourceRef ref : resources) {
        if (ref.hasModifier("dao") || ref.hasModifier("DAO")) {
            try {
                Resource resource = ref.getResource();
                File resourceFile = resource.getFile();
                if (resourceFile.isFile()) {
                    urls.add("jar:file:" + resourceFile.toURI().getPath() + ResourceUtils.JAR_URL_SEPARATOR);
                } else if (resourceFile.isDirectory()) {
                    urls.add(resourceFile.toURI().toString());
                }
            } catch (IOException e) {
                throw new ApplicationContextException("error on resource.getFile", e);
            }
        }
    }

    if (logger.isInfoEnabled()) {
        logger.info("[jade] found " + urls.size() + " jade urls: " + urls);
    }
    if (urls.size() > 0) {
        DAOComponentProvider provider = new DAOComponentProvider(true);
        if (filters != null) {
            for (TypeFilter excludeFilter : filters) {
                provider.addExcludeFilter(excludeFilter);
            }
        }

        Set<String> daoClassNames = new HashSet<String>();

        for (String url : urls) {
            if (logger.isInfoEnabled()) {
                logger.info("[jade] call 'jade/find'");
            }
            Set<BeanDefinition> dfs = provider.findCandidateComponents(url);
            if (logger.isInfoEnabled()) {
                logger.info("[jade] found " + dfs.size() + " beanDefinition from '" + url + "'");
            }
            for (BeanDefinition beanDefinition : dfs) {
                String daoClassName = beanDefinition.getBeanClassName();

                if (isDisable(daoClassName)) {
                    if (logger.isDebugEnabled()) {
                        logger.debug(
                                "[jade] ignored disabled jade dao class: " + daoClassName + "  [" + url + "]");
                    }
                    continue;
                }

                if (daoClassNames.contains(daoClassName)) {
                    if (logger.isDebugEnabled()) {
                        logger.debug("[jade] ignored replicated jade dao class: " + daoClassName + "  [" + url
                                + "]");
                    }
                    continue;
                }
                daoClassNames.add(daoClassName);

                MutablePropertyValues propertyValues = beanDefinition.getPropertyValues();
                propertyValues.addPropertyValue("DAOClass", daoClassName);
                ScannedGenericBeanDefinition scannedBeanDefinition = (ScannedGenericBeanDefinition) beanDefinition;
                scannedBeanDefinition.setPropertyValues(propertyValues);
                scannedBeanDefinition.setBeanClass(DAOFactoryBean.class);

                DefaultListableBeanFactory defaultBeanFactory = (DefaultListableBeanFactory) beanFactory;
                defaultBeanFactory.registerBeanDefinition(daoClassName, beanDefinition);

                if (logger.isDebugEnabled()) {
                    logger.debug("[jade] register DAO: " + daoClassName);
                }
            }
        }
    }
    if (logger.isInfoEnabled()) {
        logger.info("[jade] exits");
    }
}

From source file:com.gzj.tulip.jade.context.spring.JadeBeanFactoryPostProcessor.java

private void registerDAODefinition(ConfigurableListableBeanFactory beanFactory, BeanDefinition beanDefinition) {
    final String daoClassName = beanDefinition.getBeanClassName();
    MutablePropertyValues propertyValues = beanDefinition.getPropertyValues();
    /*// www.j av a2 s  .c  om
     * ?? JadeFactoryBean ??
     */
    propertyValues.addPropertyValue("objectType", daoClassName);
    propertyValues.addPropertyValue("dataAccessFactory", getDataAccessFactory(beanFactory));
    propertyValues.addPropertyValue("rowMapperFactory", getRowMapperFactory());
    propertyValues.addPropertyValue("interpreterFactory", getInterpreterFactory(beanFactory));
    String cacheProviderName = getCacheProviderName(beanFactory);
    if (cacheProviderName != null) {
        RuntimeBeanReference beanRef = new RuntimeBeanReference(cacheProviderName);
        propertyValues.addPropertyValue("cacheProvider", beanRef);
    }
    String statementWrapperProvider = getStatementWrapperProvider(beanFactory);
    if (statementWrapperProvider != null) {
        RuntimeBeanReference beanRef = new RuntimeBeanReference(statementWrapperProvider);
        propertyValues.addPropertyValue("statementWrapperProvider", beanRef);
    }
    ScannedGenericBeanDefinition scannedBeanDefinition = (ScannedGenericBeanDefinition) beanDefinition;
    scannedBeanDefinition.setPropertyValues(propertyValues);
    scannedBeanDefinition.setBeanClass(JadeFactoryBean.class);

    DefaultListableBeanFactory defaultBeanFactory = (DefaultListableBeanFactory) beanFactory;
    defaultBeanFactory.registerBeanDefinition(daoClassName, beanDefinition);

    if (logger.isDebugEnabled()) {
        logger.debug("[jade] register DAO: " + daoClassName);
    }
}

From source file:org.devefx.httpmapper.spring.mapper.ClassPathMapperScanner.java

private void processBeanDefinitions(Set<BeanDefinitionHolder> beanDefinitions) {
    ScannedGenericBeanDefinition definition;
    for (BeanDefinitionHolder holder : beanDefinitions) {
        definition = (ScannedGenericBeanDefinition) holder.getBeanDefinition();

        if (logger.isDebugEnabled()) {
            logger.debug("Creating MapperFactoryBean with name '" + holder.getBeanName() + "' and '"
                    + definition.getBeanClassName() + "' mapperInterface");
        }/*from w  ww.j a  v a2  s.c  o  m*/
        // the mapper interface is the original class of the bean
        // but, the actual class of the bean is MapperFactoryBean
        definition.getConstructorArgumentValues().addGenericArgumentValue(definition.getBeanClassName());
        definition.setBeanClass(this.factoryBeanClass);

        boolean explicitFactoryUsed = false;
        if (StringUtils.hasText(this.configBeanName)) {
            definition.getPropertyValues().add("config", new RuntimeBeanReference(this.configBeanName));
            explicitFactoryUsed = true;
        }

        if (!explicitFactoryUsed) {
            if (logger.isDebugEnabled()) {
                logger.debug("Enabling autowire by type for MapperFactoryBean with name '"
                        + holder.getBeanName() + "'.");
            }
            definition.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_BY_TYPE);
        }
    }
}