Example usage for org.springframework.beans.factory.support BeanDefinitionBuilder genericBeanDefinition

List of usage examples for org.springframework.beans.factory.support BeanDefinitionBuilder genericBeanDefinition

Introduction

In this page you can find the example usage for org.springframework.beans.factory.support BeanDefinitionBuilder genericBeanDefinition.

Prototype

public static BeanDefinitionBuilder genericBeanDefinition(Class<?> beanClass) 

Source Link

Document

Create a new BeanDefinitionBuilder used to construct a GenericBeanDefinition .

Usage

From source file:org.smf4j.spring.CsvFileBeanDefinitionParser.java

private String createLayout(Element element, ParserContext context, BeanDefinitionBuilder builder) {
    List<String> filters = new ArrayList<String>();
    List<Element> children = DomUtils.getChildElementsByTagName(element, FILTER_TAG);
    for (Element child : children) {
        String tmp = child.getAttribute(VALUE_ATTR);
        if (StringUtils.hasLength(tmp)) {
            filters.add(tmp);/*from ww  w  .j  ava 2s  .c om*/
        }
    }

    BeanDefinitionBuilder bdb = BeanDefinitionBuilder.genericBeanDefinition(CSVFILELAYOUT_CLASS);
    bdb.addPropertyValue(FILTERS_ATTR, filters);
    return context.getReaderContext().registerWithGeneratedName(bdb.getBeanDefinition());
}

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

/**
 * @return/*w w  w.jav a2  s .  c o m*/
 */
private ComponentDefinition registerBinderFactory(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder bdb = BeanDefinitionBuilder.genericBeanDefinition(ConfigurableBinderFactory.class);
    bdb.addPropertyReference(ACCESSOR_FACTORY_BEAN_NAME, ACCESSOR_FACTORY_BEAN_NAME);
    BeanComponentDefinition bcd = new BeanComponentDefinition(bdb.getBeanDefinition(),
            BINDER_FACTORY_BEAN_NAME);
    registerBeanComponentDefinition(element, parserContext, bcd);
    return bcd;
}

From source file:net.shibboleth.idp.profile.spring.relyingparty.metadata.impl.AbstractDynamicHTTPMetadataProviderParser.java

/**
 * Build the definition of the HTTPClientBuilder which contains all our configuration.
 * /*from  w  w w . ja v a2 s. co  m*/
 * @param element the HTTPMetadataProvider parser.
 * @param parserContext thee context
 * @param haveTLSTrustEngine whether have a TLS TrustEngine configured
 * @return the bean definition with the parameters.
 */
// Checkstyle: CyclomaticComplexity OFF
// Checkstyle: MethodLength OFF
private BeanDefinition buildHttpClient(Element element, ParserContext parserContext,
        boolean haveTLSTrustEngine) {
    String caching = DEFAULT_CACHING;
    if (element.hasAttributeNS(null, "httpCaching")) {
        caching = StringSupport.trimOrNull(element.getAttributeNS(null, "httpCaching"));
    }

    BeanDefinitionBuilder clientBuilder = null;
    switch (caching) {
    case "none":
        clientBuilder = BeanDefinitionBuilder.genericBeanDefinition(HttpClientFactoryBean.class);
        break;
    case "file":
        clientBuilder = BeanDefinitionBuilder.genericBeanDefinition(FileCachingHttpClientFactoryBean.class);
        if (element.hasAttributeNS(null, "httpCacheDirectory")) {
            clientBuilder.addPropertyValue("cacheDirectory",
                    StringSupport.trimOrNull(element.getAttributeNS(null, "httpCacheDirectory")));
        }
        if (element.hasAttributeNS(null, "httpMaxCacheEntries")) {
            clientBuilder.addPropertyValue("maxCacheEntries",
                    StringSupport.trimOrNull(element.getAttributeNS(null, "httpMaxCacheEntries")));
        }
        if (element.hasAttributeNS(null, "httpMaxCacheEntrySize")) {
            clientBuilder.addPropertyValue("maxCacheEntrySize",
                    StringSupport.trimOrNull(element.getAttributeNS(null, "httpMaxCacheEntrySize")));
        }
        break;
    case "memory":
        clientBuilder = BeanDefinitionBuilder.genericBeanDefinition(InMemoryCachingHttpClientFactoryBean.class);
        if (element.hasAttributeNS(null, "httpMaxCacheEntries")) {
            clientBuilder.addPropertyValue("maxCacheEntries",
                    StringSupport.trimOrNull(element.getAttributeNS(null, "httpMaxCacheEntries")));
        }
        if (element.hasAttributeNS(null, "httpMaxCacheEntrySize")) {
            clientBuilder.addPropertyValue("maxCacheEntrySize",
                    StringSupport.trimOrNull(element.getAttributeNS(null, "httpMaxCacheEntrySize")));
        }
        break;
    default:
        throw new BeanDefinitionParsingException(
                new Problem(String.format("Caching value '%s' is unsupported", caching),
                        new Location(parserContext.getReaderContext().getResource())));
    }

    clientBuilder.setLazyInit(true);

    if (element.hasAttributeNS(null, "requestTimeout")) {
        clientBuilder.addPropertyValue("connectionTimeout",
                StringSupport.trimOrNull(element.getAttributeNS(null, "requestTimeout")));
    }

    if (haveTLSTrustEngine) {
        clientBuilder.addPropertyValue("tLSSocketFactory", new SecurityEnhancedTLSSocketFactory(
                HttpClientSupport.buildNoTrustTLSSocketFactory(), new StrictHostnameVerifier()));
    }

    if (element.hasAttributeNS(null, "disregardTLSCertificate")) {
        clientBuilder.addPropertyValue("connectionDisregardTLSCertificate",
                StringSupport.trimOrNull(element.getAttributeNS(null, "disregardTLSCertificate")));
    } else if (element.hasAttributeNS(null, "disregardSslCertificate")) {
        log.warn("disregardSslCertificate is deprecated, please switch to disregardTLSCertificate");
        clientBuilder.addPropertyValue("connectionDisregardTLSCertificate",
                StringSupport.trimOrNull(element.getAttributeNS(null, "disregardSslCertificate")));
    }

    if (element.hasAttributeNS(null, "proxyHost")) {
        clientBuilder.addPropertyValue("connectionProxyHost",
                StringSupport.trimOrNull(element.getAttributeNS(null, "proxyHost")));
    }

    if (element.hasAttributeNS(null, "proxyPort")) {
        clientBuilder.addPropertyValue("connectionProxyPort",
                StringSupport.trimOrNull(element.getAttributeNS(null, "proxyPort")));
    }

    if (element.hasAttributeNS(null, "proxyUser")) {
        clientBuilder.addPropertyValue("connectionProxyUsername",
                StringSupport.trimOrNull(element.getAttributeNS(null, "proxyUser")));
    }

    if (element.hasAttributeNS(null, "proxyPassword")) {
        clientBuilder.addPropertyValue("connectionProxyPassword",
                element.getAttributeNS(null, "proxyPassword"));
    }

    return clientBuilder.getBeanDefinition();
}

From source file:org.carewebframework.shell.plugins.PluginXmlParser.java

/**
 * Parse the property list.// w w w  .  j  a v  a 2 s .  com
 * 
 * @param element Root property tag.
 * @param builder Bean definition builder.
 * @param propertyList List of properties to return.
 */
private void parseProperties(Element element, BeanDefinitionBuilder builder,
        ManagedList<AbstractBeanDefinition> propertyList) {
    NodeList properties = element.getChildNodes();

    for (int i = 0; i < properties.getLength(); i++) {
        Node node = properties.item(i);

        if (!(node instanceof Element)) {
            continue;
        }

        Element property = (Element) node;
        BeanDefinitionBuilder propertyBuilder = BeanDefinitionBuilder.genericBeanDefinition(PropertyInfo.class);
        addProperties(property, propertyBuilder);
        parseConfig(property, propertyBuilder);
        propertyList.add(propertyBuilder.getBeanDefinition());
    }
}

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

/**
 * @return//from   w  w w . j ava2s  .  c o  m
 */
private ComponentDefinition registerAccessorFactory(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder bdb = BeanDefinitionBuilder
            .genericBeanDefinition(ConfigurableControlAccessorFactory.class);

    Map<Class<?>, Class<? extends ControlAccessor>> accessors = new ManagedMap<Class<?>, Class<? extends ControlAccessor>>();
    accessors.put(JTextComponent.class, TextComponentAccessor.class);
    accessors.put(JList.class, ListAccessor.class);
    accessors.put(Selector.class, SelectorAccessor.class);
    accessors.put(JToggleButton.class, ToggleButtonAccessor.class);
    accessors.put(JComboBox.class, ComboAccessor.class);
    accessors.put(View.class, ViewAccessor.class);
    accessors.put(JLabel.class, LabelAccessor.class);
    accessors.put(TablePanel.class, TablePanelAccessor.class);
    bdb.addPropertyValue("accessors", accessors);

    BeanComponentDefinition bcd = new BeanComponentDefinition(bdb.getBeanDefinition(),
            ACCESSOR_FACTORY_BEAN_NAME);

    registerBeanComponentDefinition(element, parserContext, bcd);
    return bcd;
}

From source file:net.phoenix.thrift.xml.ProcessorBeanDefinitionParser.java

/**
 * Processorbean definition;//w  ww.  ja  va  2 s . co  m
 *
 * @param processorClass
 *            processor??
 * @param serviceBeanDefinition
 *            servicebean name@Component?
 * @return
 */
private BeanDefinition createProcessorBean(Class<?> processorClass, String serviceName) {
    BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(processorClass);
    builder.addConstructorArgReference(serviceName);
    return builder.getBeanDefinition();
}

From source file:org.brekka.stillingar.spring.config.ConfigurationServiceBeanDefinitionParser.java

/**
 * @param element/*from  ww  w .  j a  va  2s .c om*/
 * @param parserContext
 */
protected void preparePlaceholderConfigurer(Element element, ParserContext parserContext) {
    Element placeholderElement = selectSingleChildElement(element, "property-placeholder", true);
    if (placeholderElement != null) {
        String id = element.getAttribute("id");
        String name = getName(element);
        String prefix = placeholderElement.getAttribute("prefix");
        String suffix = placeholderElement.getAttribute("suffix");

        BeanDefinitionBuilder placeholderConfigurer = BeanDefinitionBuilder
                .genericBeanDefinition(ConfigurationPlaceholderConfigurer.class);
        placeholderConfigurer.addConstructorArgReference(id);

        if (!StringUtils.hasText(prefix)) {
            prefix = "$" + name + "{";
        }
        if (!StringUtils.hasText(suffix)) {
            suffix = "}";
        }
        BeanDefinitionBuilder placeholderParser = BeanDefinitionBuilder
                .genericBeanDefinition(DefaultPlaceholderParser.class);
        placeholderParser.addConstructorArgValue(prefix);
        placeholderParser.addConstructorArgValue(suffix);

        placeholderConfigurer.addPropertyValue("placeholderParser", placeholderParser.getBeanDefinition());

        parserContext.registerBeanComponent(new BeanComponentDefinition(
                placeholderConfigurer.getBeanDefinition(), id + "-placeholderConfigurer"));
    }
}

From source file:edu.washington.shibboleth.attribute.resolver.spring.dc.rws.RwsDataConnectorParser.java

/**
 * Construct the definition of the template driven search builder.
 *
 * @return the bean definition for the template search builder.
 */// w  w w  . j  av a2 s .co m
@Nonnull
public BeanDefinition createTemplatedQueryStringBuilder(final Element config) {
    final BeanDefinitionBuilder templateBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(TemplatedQueryStringBuilder.class);
    templateBuilder.setInitMethodName("initialize");

    String velocityEngineRef = StringSupport.trimOrNull(config.getAttribute("templateEngine"));
    if (null == velocityEngineRef) {
        velocityEngineRef = "shibboleth.VelocityEngine";
    }
    templateBuilder.addPropertyReference("velocityEngine", velocityEngineRef);

    templateBuilder.addPropertyValue("v2Compatibility", true);

    String filter = null;
    final Element filterElement = ElementSupport.getFirstChildElement(config,
            new QName(UWDataConnectorNamespaceHandler.NAMESPACE, "QueryTemplate"));
    if (filterElement != null) {
        filter = StringSupport.trimOrNull(filterElement.getTextContent().trim());
    }

    templateBuilder.addPropertyValue("templateText", filter);
    System.out.println("adding templateText: " + filter);

    return templateBuilder.getBeanDefinition();
}

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

/**
 * @return//from  w w  w.  ja  v a 2s.  c  om
 */
private ComponentDefinition registerPropertyEditors(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder bdb = BeanDefinitionBuilder.genericBeanDefinition(CustomEditorConfigurer.class);
    Map<String, String> map = new HashMap<String, String>();
    map.put("java.awt.Image", "org.jdal.beans.ImagePropertyEditor");
    map.put("javax.swing.Icon", "org.jdal.beans.IconPropertyEditor");
    bdb.addPropertyValue("customEditors", map);
    BeanComponentDefinition bcd = new BeanComponentDefinition(bdb.getBeanDefinition(),
            CUSTOM_EDITOR_CONFIGURER_BEAN_NAME);
    registerBeanComponentDefinition(element, parserContext, bcd);
    return bcd;
}