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.activiti.spring.components.aop.util.Scopifier.java

public static BeanDefinitionHolder createScopedProxy(String beanName, BeanDefinition definition,
        BeanDefinitionRegistry registry, boolean proxyTargetClass) {
    BeanDefinitionHolder proxyHolder = ScopedProxyUtils
            .createScopedProxy(new BeanDefinitionHolder(definition, beanName), registry, proxyTargetClass);
    registry.registerBeanDefinition(beanName, proxyHolder.getBeanDefinition());
    return proxyHolder;
}

From source file:com.mtgi.analytics.aop.config.v11.BtDataSourceBeanDefinitionDecorator.java

public BeanDefinitionHolder decorate(Node node, BeanDefinitionHolder definition, ParserContext parserContext) {
    BeanDefinition delegate = definition.getBeanDefinition();
    BeanDefinitionBuilder wrapper = BeanDefinitionBuilder.rootBeanDefinition(DataSourceFactory.class);
    wrapper.addPropertyReference("trackingManager", node.getNodeValue());
    wrapper.addPropertyValue("targetDataSource", delegate);
    wrapper.addPropertyValue("singleton", delegate.isSingleton());
    return new BeanDefinitionHolder(wrapper.getRawBeanDefinition(), definition.getBeanName());
}

From source file:com.mtgi.analytics.aop.config.v11.BtMBeanPersisterBeanDefinitionParser.java

@Override
protected void transform(ConfigurableListableBeanFactory factory, BeanDefinition template, Element element,
        ParserContext parserContext) {//  w  w  w  .jav a2s . com
    String id = overrideAttribute("id", template, element);
    overrideProperty("server", template, element, true);
    if (parserContext.isNested()) {
        if (id == null)
            id = parserContext.getReaderContext().generateBeanName(template);
        BtManagerBeanDefinitionParser.registerNestedBean(new BeanDefinitionHolder(template, id), "persister",
                parserContext);
    }
}

From source file:org.springmodules.cache.config.CacheProxyFactoryBeanParserTests.java

public void testParseCacheSetupStrategy() {
    Element proxyElement = proxyElementBuilder.toXml();

    RootBeanDefinition beanDefinition = new RootBeanDefinition(String.class);
    BeanDefinitionHolder holder = new BeanDefinitionHolder(beanDefinition, "beanName");
    beanReferenceParser.parse(proxyElement, parserContext);
    beanReferenceParserControl.setReturnValue(holder);
    beanReferenceParserControl.replay();

    // method to test.
    parser.parseCacheSetupStrategy(proxyElement, parserContext, propertySource);

    BeanDefinition proxyDefinition = registry.getBeanDefinition(proxyElementBuilder.id);

    // verify property "target" is correct.
    PropertyValue target = proxyDefinition.getPropertyValues().getPropertyValue("target");
    assertEquals(holder, target.getValue());
    assertCacheProxyFactoryBeanDefinitionIsCorrect(proxyDefinition);

    beanReferenceParserControl.verify();
}

From source file:com.trigonic.utils.spring.cmdline.CommandLineBeanDefinitionReader.java

public <T> void parse(Class<T> beanClass, String[] args) {
    OptionParser parser = new OptionParser();
    parser.acceptsAll(Arrays.asList("h", "help"), "Usage information");

    CommandLineMetaData metaData = new CommandLineMetaData(beanClass);
    metaData.register(parser);// ww  w.  j  av  a  2s .  c  o  m

    OptionSet optionSet;
    try {
        optionSet = parser.parse(args);
        if (optionSet.has("help")) {
            throw new UsageException(parser, metaData, null); // triggers usage
        }

        CommandLineBeanDefinition beanDef = new CommandLineBeanDefinition(beanClass, metaData, optionSet);
        String beanName = beanNameGenerator.generateBeanName(beanDef, this.registry);

        BeanDefinitionHolder definitionHolder = new BeanDefinitionHolder(beanDef, beanName);
        BeanDefinitionReaderUtils.registerBeanDefinition(definitionHolder, this.registry);
    } catch (OptionException e) {
        throw new UsageException(parser, metaData, e);
    } catch (OperandException e) {
        throw new UsageException(parser, metaData, e);
    }
}

From source file:uk.co.bssd.monitoring.spring.MonitorBeanDefinitionParser.java

@Override
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder bean) {

    Element adapterElement = getChildElement(element.getChildNodes(), "adapter");
    String adapterRef = adapterElement.getAttribute("ref");

    Element reporterElement = getChildElement(element.getChildNodes(), "reporter");
    String reporterRef = reporterElement.getAttribute("ref");

    BeanDefinitionBuilder monitorBeanDefinitionBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(Monitor.class);
    monitorBeanDefinitionBuilder.addConstructorArgReference(adapterRef);
    monitorBeanDefinitionBuilder.addConstructorArgReference(reporterRef);

    String monitorBeanName = UUID.randomUUID().toString();
    BeanDefinitionHolder monitorBeanDefinitionHolder = new BeanDefinitionHolder(
            monitorBeanDefinitionBuilder.getBeanDefinition(), monitorBeanName);

    registerBeanDefinition(monitorBeanDefinitionHolder, parserContext.getRegistry());

    BeanComponentDefinition monitorBeanComponentDefinition = new BeanComponentDefinition(
            monitorBeanDefinitionHolder);
    parserContext.registerComponent(monitorBeanComponentDefinition);

    long intervalMs = Long.parseLong(element.getAttribute("monitorIntervalMs"));
    bean.addConstructorArgReference(monitorBeanName);
    bean.addConstructorArgValue(intervalMs);
}

From source file:org.activiti.spring.components.config.xml.StateHandlerAnnotationBeanFactoryPostProcessor.java

private void configureDefaultActivitiRegistry(String registryBeanName, BeanDefinitionRegistry registry) {

    if (!beanAlreadyConfigured(registry, registryBeanName, ActivitiStateHandlerRegistry.class)) {
        String registryName = ActivitiStateHandlerRegistry.class.getName();
        log.info("registering a " + registryName + " instance under bean name "
                + ActivitiContextUtils.ACTIVITI_REGISTRY_BEAN_NAME + ".");

        RootBeanDefinition rootBeanDefinition = new RootBeanDefinition();
        rootBeanDefinition.setBeanClassName(registryName);
        rootBeanDefinition.getPropertyValues().addPropertyValue("processEngine", this.processEngine);

        BeanDefinitionHolder holder = new BeanDefinitionHolder(rootBeanDefinition, registryBeanName);
        BeanDefinitionReaderUtils.registerBeanDefinition(holder, registry);
    }/* ww  w  .j a va2 s  .  com*/
}

From source file:com.mtgi.analytics.aop.config.v11.BtXmlPersisterBeanDefinitionParser.java

@Override
protected void transform(ConfigurableListableBeanFactory factory, BeanDefinition template, Element element,
        ParserContext parserContext) {/*from  w  w w. ja  va2 s .c o  m*/
    String id = overrideAttribute("id", template, element);
    for (String p : PROPS)
        overrideProperty(p, template, element, false);
    //schedule periodic log rotation with Quartz
    String rotateSchedule = element.getAttribute("rotate-schedule");
    if (rotateSchedule != null)
        configureLogRotation(parserContext, factory, rotateSchedule);
    if (parserContext.isNested()) {
        if (id == null)
            id = parserContext.getReaderContext().generateBeanName(template);
        BtManagerBeanDefinitionParser.registerNestedBean(new BeanDefinitionHolder(template, id), "persister",
                parserContext);
    }
}

From source file:org.apache.smscserver.config.spring.CommandFactoryBeanDefinitionParser.java

/**
 * {@inheritDoc}//from   w  w  w .ja v a  2s  .  c o  m
 */
@SuppressWarnings("unchecked")
@Override
protected void doParse(final Element element, final ParserContext parserContext,
        final BeanDefinitionBuilder builder) {

    BeanDefinitionBuilder factoryBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(CommandFactoryFactory.class);

    ManagedMap commands = new ManagedMap();

    List<Element> childs = SpringUtil.getChildElements(element);

    for (Element commandElm : childs) {
        String name = commandElm.getAttribute("protocol-id");
        Object bean = SpringUtil.parseSpringChildElement(commandElm, parserContext, builder);
        commands.put(name, bean);
    }

    factoryBuilder.addPropertyValue("commandMap", commands);

    if (StringUtils.hasText(element.getAttribute("use-default"))) {
        factoryBuilder.addPropertyValue("useDefaultCommands",
                Boolean.valueOf(element.getAttribute("use-default")));
    }

    BeanDefinition factoryDefinition = factoryBuilder.getBeanDefinition();
    String factoryId = parserContext.getReaderContext().generateBeanName(factoryDefinition);

    BeanDefinitionHolder factoryHolder = new BeanDefinitionHolder(factoryDefinition, factoryId);
    this.registerBeanDefinition(factoryHolder, parserContext.getRegistry());

    // set the factory on the listener bean
    builder.getRawBeanDefinition().setFactoryBeanName(factoryId);
    builder.getRawBeanDefinition().setFactoryMethodName("createCommandFactory");

}

From source file:org.xeustechnologies.jcl.spring.JclBeanDefinitionDecorator.java

public BeanDefinitionHolder decorate(Node node, BeanDefinitionHolder holder, ParserContext parserContext) {
    String jclRef = node.getAttributes().getNamedItem(JCL_REF).getNodeValue();

    GenericBeanDefinition bd = new GenericBeanDefinition();
    bd.setFactoryBeanName(JCL_FACTORY);/*from   w ww  .  j av  a  2  s  .c o m*/
    bd.setFactoryMethodName(JCL_FACTORY_METHOD);
    bd.setConstructorArgumentValues(holder.getBeanDefinition().getConstructorArgumentValues());
    bd.setPropertyValues(holder.getBeanDefinition().getPropertyValues());
    bd.getConstructorArgumentValues().addIndexedArgumentValue(0,
            new ConstructorArgumentValues.ValueHolder(parserContext.getRegistry().getBeanDefinition(jclRef)));
    bd.getConstructorArgumentValues().addIndexedArgumentValue(1,
            new ConstructorArgumentValues.ValueHolder(holder.getBeanDefinition().getBeanClassName()));

    BeanDefinitionHolder newHolder = new BeanDefinitionHolder(bd, holder.getBeanName());

    createDependencyOnJcl(node, newHolder, parserContext);

    return newHolder;
}