Package com.alibaba.citrus.springext.util.DomUtil

Examples of com.alibaba.citrus.springext.util.DomUtil.ElementSelector


        attributesToProperties(substitutionElement, substitutionBuilder, "uri", "flags");

        List<Object> parameters = createManagedList(substitutionElement, parserContext);

        ElementSelector parameterSelector = and(sameNs(substitutionElement), name("parameter")); // request-contexts:parameter

        for (Element subElement : subElements(substitutionElement, parameterSelector)) {
            parameters.add(parseParameter(subElement, parserContext));
        }
View Full Code Here


        attributesToProperties(parameterElement, parameterBuilder, "key", "value");

        List<Object> values = createManagedList(parameterElement, parserContext);

        ElementSelector valueSelector = and(sameNs(parameterElement), name("value")); // request-contexts:value

        for (Element subElement : subElements(parameterElement, valueSelector)) {
            values.add(trimToNull(subElement.getTextContent()));
        }
View Full Code Here

    @Override
    protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
        attributesToProperties(element, "config.", builder);

        ElementSelector idSelector = and(sameNs(element), name("id")); // request-contexts:id
        ElementSelector storesSelector = and(sameNs(element), name("stores")); // request-contexts:stores
        ElementSelector storeMappingsSelector = and(sameNs(element), name("store-mappings")); // request-contexts:store-mappings
        ElementSelector sessionModelEncodersSelector = and(sameNs(element), name("session-model-encoders")); // request-contexts:session-model-encoders
        ElementSelector sessionInterceptorsSelector = and(sameNs(element), name("interceptors")); // request-contexts:interceptors

        for (Element subElement : subElements(element)) {
            if (idSelector.accept(subElement)) {
                parseId(subElement, parserContext, builder);
            } else if (storesSelector.accept(subElement)) {
                parseStores(subElement, parserContext, builder);
            } else if (storeMappingsSelector.accept(subElement)) {
                parseStoreMappings(subElement, parserContext, builder);
            } else if (sessionModelEncodersSelector.accept(subElement)) {
                parseSessionModelEncoders(subElement, parserContext, builder);
            } else if (sessionInterceptorsSelector.accept(subElement)) {
                parseSessionInterceptors(subElement, parserContext, builder);
            }
        }
    }
View Full Code Here

    }

    private void parseId(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
        attributesToProperties(element, "config.id.", builder, "cookieEnabled", "urlEncodeEnabled");

        ElementSelector cookieSelector = and(sameNs(element), name("cookie")); // request-contexts:cookie
        ElementSelector urlEncodeSelector = and(sameNs(element), name("url-encode")); // request-contexts:url-encode
        boolean hasGenerator = false;

        for (Element subElement : subElements(element)) {
            if (cookieSelector.accept(subElement)) {
                attributesToProperties(subElement, "config.id.cookie.", builder);
            } else if (urlEncodeSelector.accept(subElement)) {
                attributesToProperties(subElement, "config.id.urlEncode.", builder);
            } else if (!hasGenerator) {
                Object generator = parseConfigurationPointBean(subElement, generatorsConfigurationPoint, parserContext,
                        builder);
View Full Code Here

        builder.addPropertyValue("config.stores.stores", storeMap);
    }

    private void parseStoreMappings(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
        ElementSelector matchSelector = and(sameNs(element), name("match")); // request-contexts:match
        ElementSelector matchRegexSelector = and(sameNs(element), name("matchRegex")); // request-contexts:matchRegex
        List<Object> patterns = createManagedList(element, parserContext);

        for (Element subElement : subElements(element)) {
            if (matchSelector.accept(subElement)) {
                patterns.add(parseMatch(subElement, parserContext, false));
            } else if (matchRegexSelector.accept(subElement)) {
                patterns.add(parseMatch(subElement, parserContext, true));
            }
        }

        builder.addPropertyValue("config.storeMappings.patterns", patterns);
View Full Code Here

        parseBeanDefinitionAttributes(element, parserContext, builder);

        Map<Object, Object> engines = createManagedMap(element, parserContext);
        Map<Object, Object> mappings = createManagedMap(element, parserContext);

        ElementSelector engineSelector = ns(templateEnginesConfigurationPoint.getNamespaceUri());
        ElementSelector mappingSelector = and(sameNs(element), name("template-mapping"));

        for (Element subElement : subElements(element)) {
            // engine
            if (engineSelector.accept(subElement)) {
                BeanDefinitionHolder engine = parseConfigurationPointBean(subElement,
                        templateEnginesConfigurationPoint, parserContext, builder);
                engines.put(engine.getBeanName(), engine);
            }

            // mapping
            else if (mappingSelector.accept(subElement)) {
                String ext = normalizeExtension(subElement.getAttribute("extension"));
                String engineName = assertNotNull(trimToNull(subElement.getAttribute("engine")), "engine");

                assertNotNull(ext, "extension");
                assertTrue(!mappings.containsKey(ext), "duplicated extension: %s", ext);
View Full Code Here

        if (configFileURL != null) {
            builder.addPropertyValue("configFileURL", configFileURL);
        }

        ElementSelector pathSelector = and(sameNs(element), name("path"));
        List<Object> paths = createManagedList(element, parserContext);

        for (Element subElement : subElements(element, pathSelector)) {
            paths.add(parsePath(subElement, parserContext));
        }
View Full Code Here

public class EscapeSupportDefinitionParser extends AbstractSingleBeanDefinitionParser<EscapeSupport> {
    @Override
    protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
        attributesToProperties(element, builder, "defaultEscape");

        ElementSelector escapeSelector = and(sameNs(element), name("escape"));
        ElementSelector noescapeSelector = and(sameNs(element), name("noescape"));

        List<Object> rules = createManagedList(element, parserContext);

        for (Element subElement : subElements(element)) {
            if (escapeSelector.accept(subElement)) {
                rules.add(parseEscape(subElement, parserContext, builder.getRawBeanDefinition(),
                        trimToNull(subElement.getAttribute("type"))));
            } else if (noescapeSelector.accept(subElement)) {
                rules.add(parseEscape(subElement, parserContext, builder.getRawBeanDefinition(), "noescape"));
            }
        }

        builder.addPropertyValue("escapeRules", rules);
View Full Code Here

    /**
     * ����element�µ�����registrars��
     */
    public static Object parseRegistrars(Element parentElement, ParserContext parserContext,
                                         BeanDefinitionBuilder containingBeanDefBuilder) {
        ElementSelector registrarSelector = and(sameNs(parentElement), name("property-editor-registrar"));
        List<Object> registrars = createManagedList(parentElement, parserContext);

        for (Element subElement : subElements(parentElement, registrarSelector)) {
            registrars.add(parseBean(subElement, parserContext, containingBeanDefBuilder));
        }
View Full Code Here

        BeanDefinitionBuilder formConfigBuilder = BeanDefinitionBuilder.genericBeanDefinition(FormConfigImpl.class);

        attributesToProperties(element, formConfigBuilder, "converterQuiet", "postOnlyByDefault", "messageCodePrefix");

        // import forms
        ElementSelector importSelector = and(sameNs(element), name("import"));
        List<Object> imports = createManagedList(element, parserContext);

        for (Element subElement : subElements(element, importSelector)) {
            String formRef = assertNotNull(trimToNull(subElement.getAttribute("form")), "import form is empty");
            imports.add(new RuntimeBeanReference(formRef));
View Full Code Here

TOP

Related Classes of com.alibaba.citrus.springext.util.DomUtil.ElementSelector

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.