comparison artifacts-common/src/main/java/de/intevation/artifacts/common/utils/XSLTransformer.java @ 385:e08f1475facc

XSLTransformer: Widen parameters to store more than strings. artifacts/trunk@4329 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 02 May 2012 16:42:24 +0000
parents a94bc2491b41
children c40729bfe06d
comparison
equal deleted inserted replaced
384:823752e3d392 385:e08f1475facc
23 23
24 public class XSLTransformer { 24 public class XSLTransformer {
25 25
26 private static Logger log = Logger.getLogger(XSLTransformer.class); 26 private static Logger log = Logger.getLogger(XSLTransformer.class);
27 27
28 protected Map<String, String> parameters; 28 protected Map<String, Object> parameters;
29 29
30 public XSLTransformer() { 30 public XSLTransformer() {
31 } 31 }
32 32
33 public String transform(Node source, InputStream transform) { 33 public String transform(Node source, InputStream transform) {
38 TransformerFactory.newInstance(); 38 TransformerFactory.newInstance();
39 Transformer transformer = 39 Transformer transformer =
40 xformFactory.newTransformer(templateSource); 40 xformFactory.newTransformer(templateSource);
41 41
42 if (parameters != null) { 42 if (parameters != null) {
43 for (Map.Entry<String, String> entry: parameters.entrySet()) { 43 for (Map.Entry<String, Object> entry: parameters.entrySet()) {
44 transformer.setParameter(entry.getKey(), entry.getValue()); 44 transformer.setParameter(entry.getKey(), entry.getValue());
45 } 45 }
46 } 46 }
47 47
48 StringWriter result = new StringWriter(); 48 StringWriter result = new StringWriter();
61 } 61 }
62 62
63 return null; 63 return null;
64 } 64 }
65 65
66 public void addParameter(String key, String value) { 66 public void addParameter(String key, Object value) {
67 if (parameters == null) { 67 if (parameters == null) {
68 parameters = new HashMap<String, String>(); 68 parameters = new HashMap<String, Object>();
69 } 69 }
70 parameters.put(key, value); 70 parameters.put(key, value);
71 } 71 }
72 } 72 }
73 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 73 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org