annotate gnv-artifacts/src/main/java/de/intevation/gnv/utils/MapfileGenerator.java @ 724:9ba6bb85d6dd

Integrate lookup for MapFileTemplate for the different Layer. gnv-artifacts/trunk@754 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Tue, 09 Mar 2010 12:54:05 +0000
parents 40ead2d2a08d
children 452fad121560
rev   line source
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.gnv.utils;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
3 import java.io.File;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
4 import java.io.FileNotFoundException;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
5 import java.io.FileWriter;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
6 import java.io.IOException;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
7 import java.io.StringWriter;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
8 import java.io.Writer;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
9 import java.util.ArrayList;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
10 import java.util.Date;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
11 import java.util.List;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
12
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
13 import javax.xml.xpath.XPathConstants;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
14
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import org.apache.log4j.Logger;
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
16 import org.apache.velocity.Template;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
17 import org.apache.velocity.VelocityContext;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
18 import org.apache.velocity.app.VelocityEngine;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
19 import org.w3c.dom.Document;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
20 import org.w3c.dom.Node;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
21 import org.w3c.dom.NodeList;
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22
724
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
23 import de.intevation.artifactdatabase.Config;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
24 import de.intevation.artifactdatabase.XMLUtils;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
25 import de.intevation.artifacts.ArtifactNamespaceContext;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
26 import de.intevation.gnv.wms.LayerInfo;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
27
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
28
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 /**
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30 * @author Ingo Weinzierl (ingo.weinzierl@intevation.de)
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 */
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 public class MapfileGenerator
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 extends Thread
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 {
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
35 public static final String TEMPLATE_PATH =
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
36 "/artifact-database/gnv/map-generator/templates/path/text()";
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
37
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
38 public static final String TEMPLATE_MAPFILE =
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
39 "/artifact-database/gnv/map-generator/templates/maptemplate/text()";
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 public static final String MAPFILE_PATH =
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
42 "/artifact-database/gnv/map-generator/mapfile/@path";
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
43
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
44 public static final String SHAPEFILE_BASE_DIR =
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
45 "/artifact-database/gnv/shapefile-directory/@path";
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
46
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
47 public static final String VELOCITY_LOGFILE =
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
48 "/artifact-database/velocity/logfile/@path";
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
49
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
50 public static final String META_FILE_NAME = "meta.xml";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
51
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
52 public static final String XPATH_LAYER = "/art:meta/art:layer";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
53 public static final String XPATH_LAYER_NAME = "art:name";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
54 public static final String XPATH_LAYER_TYPE = "art:type";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
55 public static final String XPATH_LAYER_DATA = "art:data";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
56 public static final String XPATH_LAYER_STATUS = "art:status";
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
57 public static final String XPATH_LAYER_MODEL = "art:model";
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 protected static final long SLEEPTIME = 10 * 1000L; // 10 seconds
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 private static Logger logger = Logger.getLogger(MapfileGenerator.class);
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 private static MapfileGenerator instance;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
65 private File mapfile;
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
66 private String shapefileDirectory;
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
67 private String templatePath;
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
68 private String velocityLogfile;
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
69
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
70 private VelocityEngine velocityEngine;
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71 private boolean lock[];
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75 private MapfileGenerator() {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 lock = new boolean[1];
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 public static void main(String[] args) {
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
81 // TODO IMPLEMENT ME
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
82 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
83
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 public static synchronized MapfileGenerator getInstance() {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 if (instance == null) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87 instance = new MapfileGenerator();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 instance.setDaemon(true);
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 instance.start();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 return instance;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 public void update() {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 synchronized (lock) {
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
98 logger.debug("update");
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 lock[0] = true;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 lock.notify();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 public void run() {
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
106 logger.debug("Start MapfileGenerator thread...");
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107 try {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
108 for (;;) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 synchronized (lock) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110 while (!lock[0]) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111 lock.wait(SLEEPTIME);
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 lock[0] = false;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114 }
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
115
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
116 logger.debug("Start sync process now...");
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
117 generate();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
118 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
119 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
120 catch (InterruptedException ie) {
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
121 logger.debug("MapfileGenerator thread got an interrupt.");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
122 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
123 finally {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
124 logger.debug("THREAD END");
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
125 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126 }
724
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
127
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
128 public boolean templateExists(String templateID){
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
129 Template template = getTemplateByName(templateID);
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
130 return template != null;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
131 }
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
134 protected void generate() {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
135 File basedir = new File(getShapefileBaseDir());
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
136 List layers = new ArrayList();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
137 searchMetaInformation(basedir, layers);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
138 writeMapfile(layers);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
139 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
140
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
141
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
142 protected VelocityEngine getVelocityEngine() {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
143 if (velocityEngine == null) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
144 velocityEngine = new VelocityEngine();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
145 try {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
146 setupVelocity(velocityEngine);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
147 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
148 catch (Exception e) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
149 logger.error(e, e);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
150 return null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
151 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
152 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
153 return velocityEngine;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
154 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
155
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
156
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
157 protected void setupVelocity(VelocityEngine engine)
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
158 throws Exception
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
159 {
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
160 engine.setProperty(
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
161 "input.encoding",
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
162 "UTF-8");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
163
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
164 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
165 VelocityEngine.RUNTIME_LOG,
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
166 getVelocityLogfile());
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
167
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
168 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
169 "resource.loader",
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
170 "file");
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
171
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
172 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
173 "file.resource.loader.path",
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
174 getTemplateBaseDir());
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
175
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
176 engine.init();
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
177 }
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
178
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
179
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
180 protected String getVelocityLogfile() {
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
181 if (velocityLogfile == null)
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
182 velocityLogfile = Config.getStringXPath(VELOCITY_LOGFILE);
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
183
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
184 return velocityLogfile;
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
185 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
186
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
187
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
188 protected String getTemplateBaseDir() {
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
189 if (templatePath == null) {
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
190 templatePath = Config.getStringXPath(TEMPLATE_PATH);
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
191 templatePath = Config.replaceConfigDir(templatePath);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
192 }
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
193
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
194 return templatePath;
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
195 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
196
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
197
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
198 protected Template getTemplateByName(String model) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
199 if (model.indexOf(".vm") < 0) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
200 model = model.concat(".vm");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
201 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
202
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
203 try {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
204 VelocityEngine engine = getVelocityEngine();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
205 if (engine == null) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
206 logger.error("Error while fetching VelocityEngine.");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
207 return null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
208 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
209
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
210 return engine.getTemplate(model);
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
211 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
212 catch (Exception e) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
213 logger.warn(e, e);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
214 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
215
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
216 return null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
217 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
218
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
219
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
220 protected Template getMapfileTemplate()
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
221 throws Exception
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
222 {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
223 String mapfileName = Config.getStringXPath(TEMPLATE_MAPFILE);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
224 return getTemplateByName(mapfileName);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
225 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
226
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
227
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
228 protected String getShapefileBaseDir() {
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
229 if (shapefileDirectory == null) {
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
230 shapefileDirectory = Config.getStringXPath(SHAPEFILE_BASE_DIR);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
231 shapefileDirectory = Config.replaceConfigDir(shapefileDirectory);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
232 }
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
233
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
234 return shapefileDirectory;
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
235 }
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
236
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
237
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
238 protected File getMapfile() {
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
239 if (mapfile == null) {
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
240 String tmp = Config.getStringXPath(MAPFILE_PATH);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
241 tmp = Config.replaceConfigDir(tmp);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
242 mapfile = new File(tmp);
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
243 }
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
244
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
245 return mapfile;
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
246 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
247
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
248
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
249 protected void searchMetaInformation(File file, List store) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
250 if (file.isDirectory()) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
251 File[] files = file.listFiles();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
252
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
253 if (files != null && files.length != 0) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
254 int size = files.length;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
255 for (File tmp: files) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
256 searchMetaInformation(tmp, store);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
257 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
258 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
259 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
260 else if (file.getName().equals(META_FILE_NAME)) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
261 LayerInfo[] info = parseMeta(file);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
262
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
263 int infoSize = info.length;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
264 for (int j = 0; j < infoSize; j++) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
265 if (info[j] != null) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
266 store.add(info[j]);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
267 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
268 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
269 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
270 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
271
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
272
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
273 protected LayerInfo[] parseMeta(File file) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
274 Document meta = XMLUtils.parseDocument(file);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
275 List layers = new ArrayList();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
276
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
277 NodeList layerset = (NodeList) XMLUtils.xpath(
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
278 meta,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
279 XPATH_LAYER,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
280 XPathConstants.NODESET,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
281 ArtifactNamespaceContext.INSTANCE);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
282
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
283 int size = layerset.getLength();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
284 for (int i = 0; i < size; i++) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
285 LayerInfo info = parseLayer(layerset.item(i));
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
286
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
287 if (info != null && !info.isEmpty() && !info.isBroken()) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
288 layers.add(info);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
289 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
290 else {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
291 logger.warn("Found broken LayerInfo object.");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
292 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
293 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
294
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
295 return (LayerInfo[]) layers.toArray(new LayerInfo[layers.size()]);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
296 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
297
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
298
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
299 protected LayerInfo parseLayer(Node layer) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
300 LayerInfo info = new LayerInfo();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
301
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
302 String name = parseLayerAttr(layer, XPATH_LAYER_NAME);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
303 if (name != null && !name.equals("")) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
304 info.setName(name);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
305 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
306
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
307 String model = parseLayerAttr(layer, XPATH_LAYER_MODEL);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
308 if (model != null && !model.equals("")) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
309 info.setModel(model);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
310 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
311
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
312 String type = parseLayerAttr(layer, XPATH_LAYER_TYPE);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
313 if (type != null && !type.equals("")) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
314 info.setType(type);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
315 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
316
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
317 String data = parseLayerAttr(layer, XPATH_LAYER_DATA);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
318 if (data != null && !data.equals("")) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
319 info.setData(data);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
320 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
321
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
322 String status = parseLayerAttr(layer, XPATH_LAYER_STATUS);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
323 if (status != null && !status.equals("")) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
324 info.setStatus(status);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
325 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
326
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
327 return info;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
328 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
329
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
330
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
331 protected String parseLayerAttr(Node node, String xpath) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
332 return (String) XMLUtils.xpath(
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
333 node,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
334 xpath,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
335 XPathConstants.STRING,
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
336 ArtifactNamespaceContext.INSTANCE);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
337 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
338
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
339
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
340 protected void writeMapfile(List layers) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
341 String tmpMapName = "mapfile" + new Date().getTime();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
342
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
343 int layersize = layers.size();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
344 StringBuilder sb = new StringBuilder();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
345 StringWriter sw = null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
346 LayerInfo info = null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
347
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
348 for (int i = 0; i < layersize; i++) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
349 sw = new StringWriter();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
350 info = (LayerInfo) layers.get(i);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
351
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
352 Template layerTemplate = getTemplateByName(info.getModel());
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
353 VelocityContext context = new VelocityContext();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
354 context.put("info", info);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
355
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
356 try {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
357 layerTemplate.merge(context, sw);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
358 sb.append(sw.toString());
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
359 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
360 catch (IOException ioe) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
361 logger.warn("Error while filling layer template.");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
362 logger.warn(ioe, ioe);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
363 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
364 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
365
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
366 File map = getMapfile();
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
367 Writer writer = null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
368 File tmp = null;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
369
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
370 try {
625
40ead2d2a08d Restructured configuration, removed duplicated entry and store config information in MapfileGenerator to avoid reading config file every time while updating mapfile.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 624
diff changeset
371 tmp = new File(map.getParent(), tmpMapName);
622
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
372
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
373 tmp.createNewFile();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
374 writer = new FileWriter(tmp);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
375
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
376 VelocityContext context = new VelocityContext();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
377 context.put("LAYERS", sb.toString());
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
378
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
379 Template mapTemplate = getMapfileTemplate();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
380 if (mapTemplate == null) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
381 logger.warn("No mapfile template found.");
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
382 return;
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
383 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
384
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
385 mapTemplate.merge(context, writer);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
386
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
387 // we need to create a temporary mapfile first und rename it into
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
388 // real mapfile because we don't run into race conditions on this
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
389 // way. (iw)
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
390 tmp.renameTo(map);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
391 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
392 catch (FileNotFoundException fnfe) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
393 logger.error(fnfe, fnfe);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
394 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
395 catch (IOException ioe) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
396 logger.error(ioe, ioe);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
397 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
398 catch (Exception e) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
399 logger.error(e, e);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
400 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
401 finally {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
402 try {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
403 // close file writer
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
404 if (writer != null) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
405 writer.close();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
406 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
407
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
408 // remove temporary mapfile if an error occured and it still
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
409 // exists
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
410 if (tmp.exists()) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
411 tmp.delete();
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
412 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
413 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
414 catch (IOException ioe) {
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
415 logger.debug(ioe, ioe);
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
416 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
417 }
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
418 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
419 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
420 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8:

http://dive4elements.wald.intevation.org