Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/collections/D4EArtifactCollection.java @ 7077:0a337f0005c2 generator-refactoring
Extended init() of OutGenerator to take name of the out to serve.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Fri, 20 Sep 2013 16:34:09 +0200 |
parents | c47f1a1d0f0f |
children | e4606eae8ea5 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/collections/D4EArtifactCollection.java Fri Sep 20 15:44:39 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/collections/D4EArtifactCollection.java Fri Sep 20 16:34:09 2013 +0200 @@ -330,7 +330,7 @@ // XXX NOTE: the outGen is not able to process its generate() operation, // because it has no OutputStream set! - outGen.init(XMLUtils.newDocument(), null, getContext()); + outGen.init(out, XMLUtils.newDocument(), null, getContext()); prepareMasterArtifact(outGen); try { @@ -382,16 +382,12 @@ // If type contains 'chartinfo' use a generator that // just allow access to width, height etc. - OutGenerator generator = null; - if (type != null - && type.length() > 0 - && type.indexOf("chartinfo") > 0) - { - generator = RiverContext.getOutGenerator(context, type, subtype); - } - else { - generator = RiverContext.getOutGenerator(context, name, subtype); - } + + String key = type != null && !type.isEmpty() && type.indexOf("chartinfo") > 0 + ? type + : name; + + OutGenerator generator = RiverContext.getOutGenerator(context, key, subtype); if (generator == null) { log.error("There is no generator specified for output: " + name); @@ -417,7 +413,7 @@ } } - generator.init(format, out, context); + generator.init(key, format, out, context); generator.setSettings(settings); generator.setCollection(this); prepareMasterArtifact(generator);