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