Mercurial > dive4elements > gnv-client
comparison gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContextFactory.java @ 369:77cd3a2bc381
Fixed file-leak bug and sourced xml parsing out to XMLUtils of artifactdatabase.
gnv-artifacts/trunk@446 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Thu, 17 Dec 2009 11:42:21 +0000 |
parents | 2f7a28f211c7 |
children | 3a0c0ad113d9 |
comparison
equal
deleted
inserted
replaced
368:6491000407dd | 369:77cd3a2bc381 |
---|---|
5 | 5 |
6 import java.io.FileInputStream; | 6 import java.io.FileInputStream; |
7 import java.io.FileNotFoundException; | 7 import java.io.FileNotFoundException; |
8 import java.io.IOException; | 8 import java.io.IOException; |
9 import java.io.InputStream; | 9 import java.io.InputStream; |
10 import java.io.File; | |
11 | |
10 import java.util.Properties; | 12 import java.util.Properties; |
11 | 13 |
12 import org.apache.log4j.Logger; | 14 import org.apache.log4j.Logger; |
13 import org.w3c.dom.Document; | 15 import org.w3c.dom.Document; |
14 | 16 |
17 import de.intevation.gnv.artifacts.cache.CacheFactory; | 19 import de.intevation.gnv.artifacts.cache.CacheFactory; |
18 import de.intevation.gnv.geobackend.base.connectionpool.ConnectionPoolFactory; | 20 import de.intevation.gnv.geobackend.base.connectionpool.ConnectionPoolFactory; |
19 import de.intevation.gnv.geobackend.base.query.container.QueryContainerFactory; | 21 import de.intevation.gnv.geobackend.base.query.container.QueryContainerFactory; |
20 import de.intevation.gnv.geobackend.base.query.container.exception.QueryContainerException; | 22 import de.intevation.gnv.geobackend.base.query.container.exception.QueryContainerException; |
21 import de.intevation.gnv.chart.XMLChartTheme; | 23 import de.intevation.gnv.chart.XMLChartTheme; |
22 import de.intevation.gnv.utils.ArtifactXMLUtilities; | 24 |
25 import de.intevation.artifactdatabase.XMLUtils; | |
23 | 26 |
24 /** | 27 /** |
25 * @author Tim Englich <tim.englich@intevation.de> | 28 * @author Tim Englich <tim.englich@intevation.de> |
26 * | 29 * |
27 */ | 30 */ |
83 | 86 |
84 log.info("Initialisation of chart template"); | 87 log.info("Initialisation of chart template"); |
85 String chartConfigFile = Config.getStringXPath( | 88 String chartConfigFile = Config.getStringXPath( |
86 config, CHARTCONFIGNODEPATH | 89 config, CHARTCONFIGNODEPATH |
87 ); | 90 ); |
88 chartConfigFile = Config.replaceConfigDir(chartConfigFile); | 91 chartConfigFile = Config.replaceConfigDir(chartConfigFile); |
89 log.debug("Parse xml configuration of " + chartConfigFile); | 92 log.debug("Parse xml configuration of " + chartConfigFile); |
90 InputStream is = new FileInputStream(chartConfigFile); | 93 |
91 Document template = ArtifactXMLUtilities.readDocument(is); | 94 Document tmpl = XMLUtils.parseDocument(new File(chartConfigFile)); |
92 XMLChartTheme theme = new XMLChartTheme("XMLChartTheme"); | 95 XMLChartTheme theme = new XMLChartTheme("XMLChartTheme"); |
93 theme.applyXMLConfiguration(template); | 96 if (tmpl != null) { |
97 theme.applyXMLConfiguration(tmpl); | |
98 } | |
99 else { | |
100 log.error( | |
101 "Cannot load chart template from '" + | |
102 chartConfigFile + "'"); | |
103 } | |
94 | 104 |
95 returnValue = new GNVArtifactContext(config); | 105 returnValue = new GNVArtifactContext(config); |
96 | 106 |
97 returnValue.put(CHARTTEMPLATE, theme); | 107 returnValue.put(CHARTTEMPLATE, theme); |
98 } catch (FileNotFoundException e) { | 108 } catch (FileNotFoundException e) { |