Example usage for org.springframework.beans.factory.config BeanDefinitionHolder BeanDefinitionHolder

List of usage examples for org.springframework.beans.factory.config BeanDefinitionHolder BeanDefinitionHolder

Introduction

In this page you can find the example usage for org.springframework.beans.factory.config BeanDefinitionHolder BeanDefinitionHolder.

Prototype

public BeanDefinitionHolder(BeanDefinition beanDefinition, String beanName) 

Source Link

Document

Create a new BeanDefinitionHolder.

Usage

From source file:org.cloudfoundry.reconfiguration.util.StandardPropertyAugmenterTest.java

@Test
public void existingPropertiesFactoryBeanPropertiesBeanDefinitionHolder() {
    BeanReference br = new RuntimeBeanNameReference(this.beanName);
    this.propertyValues.addPropertyValue(this.key, br);
    when(this.beanDefinition.getBeanClassName()).thenReturn(PropertiesFactoryBean.class.getCanonicalName(),
            Map.class.getCanonicalName());
    BeanDefinitionHolder bdh = new BeanDefinitionHolder(this.beanDefinition, "");
    this.propertyValues.addPropertyValue("properties", bdh);
    Map<String, String> m = new HashMap<String, String>();
    m.put("additional-key", "additional-value");
    this.propertyValues.addPropertyValue("sourceMap", m);

    this.propertyAugmenter.augment(this.beanFactory, this.beanClass, this.key, this.additionalProperties);

    assertTrue(this.propertyValues.contains(this.key));
    assertContainsKey("additional-key");
}

From source file:org.jdal.beans.DefaultsBeanDefinitionParser.java

/**
 * @param clazz//from w  ww .j a va  2s .c  om
 * @return
 */
@SuppressWarnings("rawtypes")
private BeanDefinitionHolder createBeanDefinition(Class clazz, ParserContext parserContext) {
    GenericBeanDefinition gbd = new GenericBeanDefinition();
    gbd.setBeanClass(clazz);
    gbd.setInitMethodName(INIT_METHOD_NAME);
    BeanDefinitionHolder holder = new BeanDefinitionHolder(gbd,
            parserContext.getReaderContext().generateBeanName(gbd));

    return holder;
}

From source file:com.weibo.api.motan.config.springsupport.MotanBeanDefinitionParser.java

@SuppressWarnings({ "unchecked", "rawtypes" })
private static void parseMethods(String id, NodeList nodeList, RootBeanDefinition beanDefinition,
        ParserContext parserContext) throws ClassNotFoundException {
    if (nodeList != null && nodeList.getLength() > 0) {
        ManagedList methods = null;//w  w w .java  2  s.  c  o  m
        for (int i = 0; i < nodeList.getLength(); i++) {
            Node node = nodeList.item(i);
            if (node instanceof Element) {
                Element element = (Element) node;
                if ("method".equals(node.getNodeName()) || "method".equals(node.getLocalName())) {
                    String methodName = element.getAttribute("name");
                    if (methodName == null || methodName.length() == 0) {
                        throw new IllegalStateException("<motan:method> name attribute == null");
                    }
                    if (methods == null) {
                        methods = new ManagedList();
                    }
                    BeanDefinition methodBeanDefinition = parse((Element) node, parserContext,
                            MethodConfig.class, false);
                    String name = id + "." + methodName;
                    BeanDefinitionHolder methodBeanDefinitionHolder = new BeanDefinitionHolder(
                            methodBeanDefinition, name);
                    methods.add(methodBeanDefinitionHolder);
                }
            }
        }
        if (methods != null) {
            beanDefinition.getPropertyValues().addPropertyValue("methods", methods);
        }
    }
}

From source file:org.rosenvold.spring.convention.ConventionBeanFactory.java

private void registerBeanByResolvedType(String beanName, Class<?> resolvedType) {
    if (resolvedType == null)
        return;/* w  ww.j  a va2s  .  c o m*/
    final BeanDefinition beanDefinition = getOrCreateBeanDefinition(beanName, resolvedType);
    BeanDefinitionHolder definitionHolder = new BeanDefinitionHolder(beanDefinition, beanName);
    ScopeMetadata scopeMetadata = this.scopeMetadataResolver.resolveScopeMetadata(beanDefinition);

    ScopedProxyMode scopedProxyMode = scopeMetadata.getScopedProxyMode();
    if (!scopedProxyMode.equals(ScopedProxyMode.NO)) {
        definitionHolder = ScopedProxyUtils.createScopedProxy(definitionHolder, this,
                scopedProxyMode.equals(ScopedProxyMode.TARGET_CLASS));
    }
    registerBeanDefinition(beanName, definitionHolder.getBeanDefinition());
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

protected void registerStatisticsCacheInterceptor(Element element,
        BeanDefinitionRegistry beanDefinitionRegistry) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClass(getStatisticsCacheInterceptor());
    String cacheInterceptorId = "monitorInterceptor";
    //register the cache item config manager
    cacheItemConfigManager = element.getAttribute(CACHE_ITEM_MANAGER_ID_ATTR);
    if (!StringUtils.hasText(cacheItemConfigManager)) {
        cacheItemConfigManager = DEFAULT_ITEM_CONFIG_MANAGER_ID;
    }/*from   w  w w  . j  av  a  2  s.  c  o  m*/
    MutablePropertyValues propertyValues = definition.getPropertyValues();
    propertyValues.addPropertyValue(cacheItemConfigManager, new RuntimeBeanReference(cacheItemConfigManager));
    BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, cacheInterceptorId);
    BeanDefinitionReaderUtils.registerBeanDefinition(holder, beanDefinitionRegistry);
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

protected void registerCacheProxyBean(Element element, BeanDefinitionRegistry beanDefinitionRegistry,
        GenericBeanDefinition cacheDefinition) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClass(org.springframework.aop.framework.ProxyFactoryBean.class);
    String cacheProxyId = cacheServiceProxyId;
    definition.getPropertyValues().addPropertyValue("interceptorNames", new String[] { "monitorInterceptor" });
    definition.getPropertyValues().addPropertyValue("target", cacheDefinition);
    BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, cacheProxyId);
    BeanDefinitionReaderUtils.registerBeanDefinition(holder, beanDefinitionRegistry);
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

/**
 * Register {@link XMLCacheClientFactory} definition
 *//*ww w.  java 2  s  .c  o m*/
private void registerDefaultCacheClientFactory(BeanDefinitionRegistry beanDefinitionRegistry) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClass(RemoteCacheClientFactory.class);
    definition.setLazyInit(true);
    MutablePropertyValues propertyValues = definition.getPropertyValues();
    propertyValues.addPropertyValue("configurationWebService",
            new RuntimeBeanReference(CACHE_CONFIGURATION_WEB_SERVICE_ID));
    BeanDefinitionReaderUtils.registerBeanDefinition(
            new BeanDefinitionHolder(definition, DEFAULT_CACHE_CLIENT_FACTORY_ID), beanDefinitionRegistry);
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

/**
 * @param parserContext//from  w ww. jav a  2  s  .  co  m
 * @param serviceName TODO
 * @param serviceInterface TODO
 */
private void registerCacheWebService(BeanDefinitionRegistry beanDefinitionRegistry, String beanName,
        String serviceName, String serviceInterface, boolean isOneWay) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClassName("com.dianping.dpsf.spring.ProxyBeanFactory");
    definition.setLazyInit(true);
    definition.setInitMethodName("init");
    MutablePropertyValues propertyValues = definition.getPropertyValues();
    propertyValues.addPropertyValue("serviceName", serviceName);
    propertyValues.addPropertyValue("iface", serviceInterface);
    propertyValues.addPropertyValue("serialize", "hessian");
    propertyValues.addPropertyValue("callMethod", isOneWay ? "oneway" : "sync");
    propertyValues.addPropertyValue("timeout", "10000");
    propertyValues.addPropertyValue("hosts", getRemoteService());
    BeanDefinitionReaderUtils.registerBeanDefinition(new BeanDefinitionHolder(definition, beanName),
            beanDefinitionRegistry);
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

/**
 * @param parserContext//from  ww w.  j a v  a 2  s.  c  om
 * 
 */
private void registerDefaultCacheItemConfigManager(BeanDefinitionRegistry beanDefinitionRegistry) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClass(RemoteCacheItemConfigManager.class);
    // lazy init because default CacheItemConfigManager is not required
    definition.setLazyInit(true);
    MutablePropertyValues propertyValues = definition.getPropertyValues();
    propertyValues.addPropertyValue("configurationWebService",
            new RuntimeBeanReference(CACHE_CONFIGURATION_WEB_SERVICE_ID));
    BeanDefinitionReaderUtils.registerBeanDefinition(
            new BeanDefinitionHolder(definition, DEFAULT_ITEM_CONFIG_MANAGER_ID), beanDefinitionRegistry);
}

From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java

/**
 * Register {@link CacheInterceptor} definition
 *//*from w ww .  j a  va 2s  .  c o  m*/
private void registerCacheInterceptorDefinition(Element element, ParserContext parserContext) {
    GenericBeanDefinition definition = new GenericBeanDefinition();
    definition.setBeanClass(CacheInterceptor.class);

    // Add reference to CacheService
    definition.getPropertyValues().addPropertyValue("cacheService",
            new RuntimeBeanReference(cacheServiceProxyId));

    cacheInterceptorId = element.getAttribute(CACHE_INTERCEPTOR_ID_ATTR);

    if (!StringUtils.hasText(cacheInterceptorId)) {
        cacheInterceptorId = DEFAULT_CACHE_INTERCEPTOR_ID;
    }

    BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, this.cacheInterceptorId);

    BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry());
}