Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/context/RiverContextFactory.java @ 7226:8ab618dda850
Made lookup for generators a class of its own. First step to use it as a compat filter for facets, too.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 02 Oct 2013 18:41:12 +0200 |
parents | 24f153ad1f40 |
children | 744df5a03337 |
comparison
equal
deleted
inserted
replaced
7225:fa66845c1977 | 7226:8ab618dda850 |
---|---|
37 | 37 |
38 import org.dive4elements.river.artifacts.states.StateFactory; | 38 import org.dive4elements.river.artifacts.states.StateFactory; |
39 | 39 |
40 import org.dive4elements.river.artifacts.transitions.TransitionFactory; | 40 import org.dive4elements.river.artifacts.transitions.TransitionFactory; |
41 | 41 |
42 import org.dive4elements.river.exports.GeneratorLookup; | |
42 import org.dive4elements.river.exports.OutGenerator; | 43 import org.dive4elements.river.exports.OutGenerator; |
43 | 44 |
44 import org.dive4elements.river.themes.Theme; | 45 import org.dive4elements.river.themes.Theme; |
45 import org.dive4elements.river.themes.ThemeFactory; | 46 import org.dive4elements.river.themes.ThemeFactory; |
46 import org.dive4elements.river.themes.ThemeGroup; | 47 import org.dive4elements.river.themes.ThemeGroup; |
47 import org.dive4elements.river.themes.ThemeMapping; | 48 import org.dive4elements.river.themes.ThemeMapping; |
48 | |
49 import org.dive4elements.river.utils.Pair; | |
50 | 49 |
51 import org.w3c.dom.Document; | 50 import org.w3c.dom.Document; |
52 import org.w3c.dom.Element; | 51 import org.w3c.dom.Element; |
53 import org.w3c.dom.Node; | 52 import org.w3c.dom.Node; |
54 import org.w3c.dom.NodeList; | 53 import org.w3c.dom.NodeList; |
333 return; | 332 return; |
334 } | 333 } |
335 | 334 |
336 logger.info("Found " + num + " configured output generators."); | 335 logger.info("Found " + num + " configured output generators."); |
337 | 336 |
338 Map<String, Pair<Class<OutGenerator>, Object>> generators = | 337 GeneratorLookup generators = new GeneratorLookup(); |
339 new HashMap<String, Pair<Class<OutGenerator>, Object>>(); | |
340 | 338 |
341 int idx = 0; | 339 int idx = 0; |
342 | 340 |
343 for (int i = 0; i < num; i++) { | 341 for (int i = 0; i < num; i++) { |
344 Element item = (Element)outGenerators.item(i); | 342 Element item = (Element)outGenerators.item(i); |
379 catch (IllegalAccessException iae) { | 377 catch (IllegalAccessException iae) { |
380 logger.error(iae); | 378 logger.error(iae); |
381 } | 379 } |
382 } | 380 } |
383 | 381 |
384 Pair<Class<OutGenerator>, Object> pair = | |
385 new Pair<Class<OutGenerator>, Object>(generatorClass, cfg); | |
386 | |
387 for (String key: names.split("[\\s,]")) { | 382 for (String key: names.split("[\\s,]")) { |
388 if (!(key = key.trim()).isEmpty()) { | 383 if (!(key = key.trim()).isEmpty()) { |
389 generators.put(key, pair); | 384 generators.putGenerator(key, generatorClass, cfg); |
390 idx++; | 385 idx++; |
391 } | 386 } |
392 } | 387 } |
393 } | 388 } |
394 | 389 |