Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/exports/MapGenerator.java @ 1792:49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
flys-artifacts/trunk@3115 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 28 Oct 2011 13:48:02 +0000 |
parents | ef2300b450bf |
children | 1636686070f7 |
comparison
equal
deleted
inserted
replaced
1791:e0e5a5b51a40 | 1792:49ad801076e4 |
---|---|
1 package de.intevation.flys.exports; | 1 package de.intevation.flys.exports; |
2 | 2 |
3 import java.io.File; | |
3 import java.io.FileNotFoundException; | 4 import java.io.FileNotFoundException; |
4 import java.io.IOException; | 5 import java.io.IOException; |
5 import java.io.OutputStream; | 6 import java.io.OutputStream; |
6 import java.util.ArrayList; | 7 import java.util.ArrayList; |
7 import java.util.List; | 8 import java.util.List; |
22 | 23 |
23 import de.intevation.artifactdatabase.state.Facet; | 24 import de.intevation.artifactdatabase.state.Facet; |
24 | 25 |
25 import de.intevation.flys.artifacts.FLYSArtifact; | 26 import de.intevation.flys.artifacts.FLYSArtifact; |
26 import de.intevation.flys.artifacts.model.FacetTypes; | 27 import de.intevation.flys.artifacts.model.FacetTypes; |
28 import de.intevation.flys.artifacts.model.WMSDBLayerFacet; | |
27 import de.intevation.flys.artifacts.model.WMSLayerFacet; | 29 import de.intevation.flys.artifacts.model.WMSLayerFacet; |
28 import de.intevation.flys.utils.GeometryUtils; | 30 import de.intevation.flys.utils.GeometryUtils; |
29 import de.intevation.flys.utils.MapfileGenerator; | 31 import de.intevation.flys.utils.MapfileGenerator; |
30 | 32 |
31 | 33 |
104 createWSPLGENLayer(flys, wms); | 106 createWSPLGENLayer(flys, wms); |
105 } | 107 } |
106 else if (FLOODMAP_BARRIERS.equals(name)) { | 108 else if (FLOODMAP_BARRIERS.equals(name)) { |
107 createBarriersLayer(flys, wms); | 109 createBarriersLayer(flys, wms); |
108 } | 110 } |
111 else { | |
112 createDatabaseLayer(flys, wms); | |
113 } | |
109 } | 114 } |
110 else { | 115 else { |
111 logger.warn("Facet not supported: " + nativeFacet.getClass()); | 116 logger.warn("Facet not supported: " + nativeFacet.getClass()); |
112 } | 117 } |
113 } | 118 } |
127 protected void createBarriersLayer(FLYSArtifact flys, WMSLayerFacet wms) { | 132 protected void createBarriersLayer(FLYSArtifact flys, WMSLayerFacet wms) { |
128 MapfileGenerator mfg = MapfileGenerator.getInstance(); | 133 MapfileGenerator mfg = MapfileGenerator.getInstance(); |
129 | 134 |
130 try { | 135 try { |
131 mfg.createBarriersLayer(flys, wms); | 136 mfg.createBarriersLayer(flys, wms); |
137 } | |
138 catch (FileNotFoundException fnfe) { | |
139 logger.error(fnfe, fnfe); | |
140 } | |
141 catch (IOException ioe) { | |
142 logger.error(ioe, ioe); | |
143 } | |
144 } | |
145 | |
146 | |
147 protected void createDatabaseLayer(FLYSArtifact flys, WMSLayerFacet wms) { | |
148 logger.debug("createDatabaseLayer for facet: " + wms.getName()); | |
149 | |
150 MapfileGenerator mfg = MapfileGenerator.getInstance(); | |
151 | |
152 try { | |
153 File baseDir = mfg.getShapefileBaseDir(); | |
154 File artDir = new File(baseDir, flys.identifier()); | |
155 | |
156 if (artDir != null && !artDir.exists()) { | |
157 logger.debug("Create new directory: " + artDir.getPath()); | |
158 artDir.mkdir(); | |
159 } | |
160 | |
161 if (wms instanceof WMSDBLayerFacet) { | |
162 mfg.createDatabaseLayer(flys, (WMSDBLayerFacet) wms); | |
163 } | |
164 else { | |
165 logger.warn("Cannot create DB layer from: " + wms.getClass()); | |
166 } | |
132 } | 167 } |
133 catch (FileNotFoundException fnfe) { | 168 catch (FileNotFoundException fnfe) { |
134 logger.error(fnfe, fnfe); | 169 logger.error(fnfe, fnfe); |
135 } | 170 } |
136 catch (IOException ioe) { | 171 catch (IOException ioe) { |