comparison artifacts/src/main/java/org/dive4elements/river/exports/GeneratorLookup.java @ 8254:c87c87544cc6

Made call context injectors a list of comma separated classes.
author Sascha L. Teichmann <teichmann@intevation.de>
date Wed, 10 Sep 2014 12:42:39 +0200
parents 9667900536b6
children 5e38e2924c07
comparison
equal deleted inserted replaced
8253:b6d54b946f4c 8254:c87c87544cc6
7 */ 7 */
8 8
9 package org.dive4elements.river.exports; 9 package org.dive4elements.river.exports;
10 10
11 import java.util.HashMap; 11 import java.util.HashMap;
12 import java.util.List;
12 import java.util.Map; 13 import java.util.Map;
13 14
14 import org.dive4elements.artifacts.ContextInjector; 15 import org.dive4elements.artifacts.ContextInjector;
15 16
16 import org.dive4elements.river.artifacts.D4EArtifact.FacetFilter; 17 import org.dive4elements.river.artifacts.D4EArtifact.FacetFilter;
17 18
18 public class GeneratorLookup 19 public class GeneratorLookup
19 implements FacetFilter 20 implements FacetFilter
20 { 21 {
21 public static final class Item { 22 public static final class Item {
22 private Class<OutGenerator> generator; 23 private Class<OutGenerator> generator;
23 private Object ctx; 24 private Object ctx;
24 private ContextInjector ci; 25 private List<ContextInjector> cis;
25 26
26 public Item(Class<OutGenerator> generator, Object ctx, ContextInjector ci) { 27 public Item(Class<OutGenerator> generator, Object ctx, List<ContextInjector> cis) {
27 this.generator = generator; 28 this.generator = generator;
28 this.ctx = ctx; 29 this.ctx = ctx;
29 this.ci = ci; 30 this.cis = cis;
30 } 31 }
31 32
32 public Class<OutGenerator> getGenerator() { 33 public Class<OutGenerator> getGenerator() {
33 return generator; 34 return generator;
34 } 35 }
35 36
36 public Object getContext() { 37 public Object getContext() {
37 return ctx; 38 return ctx;
38 } 39 }
39 40
40 public ContextInjector getContextInjector() { 41 public List<ContextInjector> getContextInjectors() {
41 return ci; 42 return cis;
42 } 43 }
43 } // class Item 44 } // class Item
44 45
45 private Map<String, Item> generators; 46 private Map<String, Item> generators;
46 47
47 public GeneratorLookup() { 48 public GeneratorLookup() {
48 generators = new HashMap<String, Item>(); 49 generators = new HashMap<String, Item>();
49 } 50 }
50 51
51 public void putGenerator( 52 public void putGenerator(
52 String outName, 53 String outName,
53 Class<OutGenerator> generatorClass, 54 Class<OutGenerator> generatorClass,
54 Object ctx, 55 Object ctx,
55 ContextInjector ci 56 List<ContextInjector> cis
56 ) { 57 ) {
57 Item item = new Item(generatorClass, ctx, ci); 58 Item item = new Item(generatorClass, ctx, cis);
58 generators.put(outName, item); 59 generators.put(outName, item);
59 } 60 }
60 61
61 public Item getGenerator(String outName) { 62 public Item getGenerator(String outName) {
62 return generators.get(outName); 63 return generators.get(outName);

http://dive4elements.wald.intevation.org