comparison artifact-database/src/main/java/de/intevation/artifactdatabase/Config.java @ 59:8cd770330f1b

Added path to chart template and added a method to retrieve its configuration. artifacts/trunk@361 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 23 Nov 2009 16:56:47 +0000
parents c2fc85e55f9f
children 911c684c8a1c
comparison
equal deleted inserted replaced
58:39fec7d714dc 59:8cd770330f1b
31 new File(new File(System.getProperty("user.home", 31 new File(new File(System.getProperty("user.home",
32 System.getProperty("user.dir", "."))), ".artifactdb"); 32 System.getProperty("user.dir", "."))), ".artifactdb");
33 33
34 public static final String CONFIG_FILE = "conf.xml"; 34 public static final String CONFIG_FILE = "conf.xml";
35 35
36 public static final String CHART_TEMPLATE = "charttemplate.xml";
37
36 public static final String CONFIG_DIR_PLACEHOLDER = "${artifacts.config.dir}"; 38 public static final String CONFIG_DIR_PLACEHOLDER = "${artifacts.config.dir}";
37 39
38 private static Document config; 40 private static Document config;
39 41
40 private Config() { 42 private Config() {
41 } 43 }
42 44
43 public static synchronized final Document getConfig() { 45 public static synchronized final Document getConfig() {
44 if (config == null) { 46 if (config == null) {
45 config = loadConfig(); 47 config = loadConfig(CONFIG_FILE);
46 } 48 }
47 return config; 49 return config;
50 }
51
52 public static Document getChartTemplate() {
53 return loadConfig(CHART_TEMPLATE);
48 } 54 }
49 55
50 public static File getConfigDirectory() { 56 public static File getConfigDirectory() {
51 String configDirString = System.getProperty(CONFIG_DIR); 57 String configDirString = System.getProperty(CONFIG_DIR);
52 58
65 public static String replaceConfigDir(String path) { 71 public static String replaceConfigDir(String path) {
66 String configDir = getConfigDirectory().getAbsolutePath(); 72 String configDir = getConfigDirectory().getAbsolutePath();
67 return path.replace(CONFIG_DIR_PLACEHOLDER, configDir); 73 return path.replace(CONFIG_DIR_PLACEHOLDER, configDir);
68 } 74 }
69 75
70 private static Document loadConfig() { 76 private static Document loadConfig(String config) {
71 77
72 File configDir = getConfigDirectory(); 78 File configDir = getConfigDirectory();
73 79
74 File file = new File(configDir, CONFIG_FILE); 80 File file = new File(configDir, config);
75 81
76 if (!file.canRead() && !file.isFile()) { 82 if (!file.canRead() && !file.isFile()) {
77 logger.error("Cannot read config file '" 83 logger.error("Cannot read config file '"
78 + file + "'."); 84 + file + "'.");
79 return null; 85 return null;

http://dive4elements.wald.intevation.org