1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.common.config.service;
18
19 import org.opensaml.xml.util.DatatypeHelper;
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 AbstractReloadableServiceBeanDefinitionParser extends AbstractServiceBeanDefinitionParser {
28
29
30 protected void doParse(Element configElement, ParserContext parserContext, BeanDefinitionBuilder builder) {
31 super.doParse(configElement, parserContext, builder);
32
33 if (configElement.hasAttributeNS(null, "configurationResourcePollingFrequency")
34 && configElement.hasAttributeNS(null, "configurationResourcePollingRetryAttempts")) {
35
36 builder.addPropertyReference("pollingTimer", configElement.getAttributeNS(null, "timerId"));
37
38 long frequency = Integer.parseInt(DatatypeHelper.safeTrimOrNullString(configElement.getAttributeNS(null,
39 "configurationResourcePollingFrequency")));
40 builder.addPropertyValue("pollingFrequency", frequency);
41
42 int retryAttempts = Integer.parseInt(DatatypeHelper.safeTrimOrNullString(configElement.getAttributeNS(null,
43 "configurationResourcePollingRetryAttempts")));
44 builder.addPropertyValue("pollingRetryAttempts", retryAttempts);
45 }
46 }
47 }