Mercurial > dive4elements > gnv-client
annotate gnv/src/main/java/de/intevation/gnv/propertiesreader/ServletPropertiesReader.java @ 700:89ade245ca7a
Using unix line endings only.
gnv/trunk@940 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sun, 18 Apr 2010 09:27:11 +0000 |
parents | 254f062e334b |
children | c3d628c2c4c3 |
rev | line source |
---|---|
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.gnv.propertiesreader; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
2 |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
3 import java.util.Enumeration; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
4 import java.util.HashMap; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
5 import java.util.Map; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
6 |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
7 import javax.servlet.ServletConfig; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
8 |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 import org.apache.log4j.Logger; |
690
254f062e334b
Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
684
diff
changeset
|
10 |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
11 /** |
684
57fa8019fbdc
Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
683
diff
changeset
|
12 * @author <a href="mailto:tim.englich@intevation.de">Tim Englich</a> |
681
15ac78a91d1b
Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
36
diff
changeset
|
13 * |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
14 */ |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
15 public class ServletPropertiesReader implements PropertiesReader { |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
16 |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
17 /** |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
18 * the logger, used to log exceptions and additonaly information |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
19 */ |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 private static Logger log = Logger.getLogger(ServletPropertiesReader.class); |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
21 |
36
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
22 private Map<String, String> properties = null; |
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
23 |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
24 /** |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
25 * Constructor |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
26 */ |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
27 public ServletPropertiesReader(ServletConfig config) { |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
28 super(); |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
29 log.info("ServletPropertiesReader will be initialized"); |
36
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
30 if (config != null) { |
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
31 |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
32 Enumeration<String> keys = config.getInitParameterNames(); |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
33 properties = new HashMap<String, String>(); |
36
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
34 while (keys.hasMoreElements()) { |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
35 String key = keys.nextElement(); |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
36 String value = config.getInitParameter(key); |
36
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
37 log.info("New ConbfigurationValue; " + key + " ==> " + value); |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
38 this.properties.put(key, value); |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
39 } |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
40 } |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
41 } |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 |
690
254f062e334b
Added JavaDoc.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
684
diff
changeset
|
43 |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
44 public String getPropertieValue(String key, String defaultValue) { |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 String value = this.properties.get(key); |
36
ad381cc47217
Format Code to max 80 Chars per Row
Tim Englich <tim.englich@intevation.de>
parents:
3
diff
changeset
|
46 if (value == null) { |
3
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 value = defaultValue; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 } |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
49 return value; |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 } |
d7b4a77ba892
Infrastructur for Providing Applicationsettings
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 } |
700
89ade245ca7a
Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
690
diff
changeset
|
52 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |