1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package edu.internet2.middleware.shibboleth.common.config.attribute.encoding;
19
20 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
21 import org.springframework.beans.factory.xml.ParserContext;
22 import org.w3c.dom.Element;
23
24
25
26
27 public abstract class BaseScopedAttributeEncoderBeanDefinitionParser extends BaseAttributeEncoderBeanDefinitionParser {
28
29
30 public static final String SCOPE_TYPE_ATTRIBUTE_NAME = "scopeType";
31
32
33 public static final String SCOPE_DELIMITER_ATTRIBUTE_NAME = "scopeDelimiter";
34
35
36 public static final String SCOPE_ATTRIBUTE_ATTRIBUTE_NAME = "scopeAttribute";
37
38
39 protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
40 super.doParse(element, parserContext, builder);
41
42 if (element.hasAttributeNS(null, SCOPE_DELIMITER_ATTRIBUTE_NAME)) {
43 builder.addPropertyValue("scopeDelimiter", element.getAttributeNS(null, SCOPE_DELIMITER_ATTRIBUTE_NAME));
44 } else {
45 builder.addPropertyValue("scopeDelimiter", "@");
46 }
47
48 if (element.hasAttributeNS(null, SCOPE_ATTRIBUTE_ATTRIBUTE_NAME)) {
49 builder.addPropertyValue("scopeAttribute", element.getAttributeNS(null, SCOPE_ATTRIBUTE_ATTRIBUTE_NAME));
50 } else {
51 builder.addPropertyValue("scopeAttribute", "Scope");
52 }
53 }
54
55 }