annotate gnv-artifacts/src/main/java/de/intevation/gnv/utils/MapfileGenerator.java @ 1104:5207d09e4af6

Fixed range calculation for y-axes in the base chart class (issue233). gnv-artifacts/trunk@1234 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 28 Jun 2010 16:48:03 +0000
parents 47578d91c4f0
children f953c9a559d8
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
779
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
3 import de.intevation.artifactdatabase.Config;
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
4 import de.intevation.artifactdatabase.XMLUtils;
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
5
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
6 import de.intevation.artifacts.ArtifactNamespaceContext;
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
7
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
8 import de.intevation.gnv.wms.LayerInfo;
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
9
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
10 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
11 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
12 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
13 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
14 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
15 import java.io.Writer;
779
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
16
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
17 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
18 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
19 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
20
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 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
22
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 import org.apache.log4j.Logger;
779
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
24
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
25 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
26 import org.apache.velocity.VelocityContext;
779
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
27
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
28 import org.apache.velocity.app.VelocityEngine;
779
b1f5f2a8840f Ordered imports. Removed needless imports. Removed empty headers.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 778
diff changeset
29
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
30 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
31 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
32 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
33
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 /**
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
35 * This class iterates over a bunch of directories, searches for meta
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
36 * information coresponding to shapefiles and creates a mapfile which is used by
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
37 * a <i>MapServer</i>.
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
38 *
780
c4156275c1e1 Bring @author javadoc tags in form '@author <a href="john.doe@example.com">John Doe</a>'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 779
diff changeset
39 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
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 class MapfileGenerator
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 extends Thread
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 {
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
44 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
45 * The configured template path.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
46 */
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
47 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
48 "/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
49
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
50 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
51 * The configured template mapfile.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
52 */
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
53 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
54 "/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
55
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
56 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
57 * The configured mapfile path.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
58 */
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 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
60 "/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
61
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
62 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
63 * The configured shapefile base directory where the subdirectories for each
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
64 * artifact are stored.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
65 */
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
66 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
67 "/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
68
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
69 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
70 * The configured velocity logfile.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
71 */
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
72 public static final String VELOCITY_LOGFILE =
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
73 "/artifact-database/velocity/logfile/@path";
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
74
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
75 /**
840
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
76 * The URL for calling the mapserver
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
77 */
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
78 public static final String MAPSERVER_URL =
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
79 "/artifact-database/mapserver/server/@path";
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
80
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
81 /**
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
82 * The name of the file storing meta information coresponding to shapefiles.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
83 */
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
84 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
85
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
86 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
87 * The XPath to layer nodes in the meta information xml file.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
88 */
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
89 public static final String XPATH_LAYER = "/art:meta/art:layer";
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
90
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
91 public static final String XPATH_LAYER_NAME = "art:name";
730
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
92 public static final String XPATH_LAYER_TITLE = "art:title";
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
93 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
94 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
95 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
96 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
97
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 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
99
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 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
101
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 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
103
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
104 private File mapfile;
840
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
105 private String mapServerUrl;
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
106 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
107 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
108 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
109
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
110 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
111 private boolean lock[];
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
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
115 private MapfileGenerator() {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
116 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
117 }
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
120 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
121 * A main method which can be used to create a mapfile without a running
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
122 * artifact server.<br>
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
123 * <b>NOTE:</b> This method is not implemented yet!
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
124 *
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
125 * @param args Arguments.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
126 */
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127 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
128 // 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
129 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
132 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
133 * Returns the instance of this generator.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
134 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
135 * @return the instance.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
136 */
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137 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
138 if (instance == null) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
139 instance = new MapfileGenerator();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
140 instance.setDaemon(true);
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
141 instance.start();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
142 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
143
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
144 return instance;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
145 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
146
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
147
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
148 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
149 * Triggers the mapfile generation process.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
150 */
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
151 public void update() {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
152 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
153 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
154 lock[0] = true;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
155 lock.notify();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
156 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
157 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
158
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
159
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
160 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
161 * Thread to generate a mapfile.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
162 */
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
163 @Override
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
164 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
165 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
166 try {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
167 for (;;) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
168 synchronized (lock) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
169 while (!lock[0]) {
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
170 lock.wait(SLEEPTIME);
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
171 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
172 lock[0] = false;
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
173 }
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
174
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
175 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
176 generate();
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
177 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
178 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
179 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
180 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
181 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
182 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
183 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
184 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
185 }
778
9a828e5a2390 Removed trailing whitespace
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 730
diff changeset
186
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
187 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
188 * Method to check the existance of a template file.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
189 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
190 * @param templateID The name of a template.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
191 * @return true, of the template exists - otherwise false.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
192 */
724
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
193 public boolean templateExists(String templateID){
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
194 Template template = getTemplateByName(templateID);
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
195 return template != null;
9ba6bb85d6dd Integrate lookup for MapFileTemplate for the different Layer.
Tim Englich <tim.englich@intevation.de>
parents: 625
diff changeset
196 }
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
197
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
198
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
199 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
200 * Method which starts searching for meta information file and mapfile
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
201 * generation.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
202 */
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
203 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
204 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
205 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
206 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
207 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
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
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
210
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
211 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
212 * Returns the VelocityEngine used for the template mechanism.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
213 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
214 * @return the velocity engine.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
215 */
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
216 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
217 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
218 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
219 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
220 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
221 }
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 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
223 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
224 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
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 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
228 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
229
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
230
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
231 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
232 * Initialize velocity.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
233 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
234 * @param engine Velocity engine.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
235 * @throws Exception if an error occured while initializing velocity.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
236 */
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
237 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
238 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
239 {
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
240 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
241 "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
242 "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
243
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
244 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
245 VelocityEngine.RUNTIME_LOG,
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
246 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
247
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
248 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
249 "resource.loader",
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
250 "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
251
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
252 engine.setProperty(
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
253 "file.resource.loader.path",
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
254 getTemplateBaseDir());
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
255
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
256 engine.init();
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
257 }
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
258
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
259
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
260 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
261 * Returns the path specifying the logfile for velocity.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
262 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
263 * @return Velocity logfile path.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
264 */
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
265 protected String getVelocityLogfile() {
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
266 if (velocityLogfile == null)
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
267 velocityLogfile = Config.getStringXPath(VELOCITY_LOGFILE);
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
268
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
269 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
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
273 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
274 * Returns the base directory storing the templates.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
275 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
276 * @return the template base directory.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
277 */
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
278 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
279 if (templatePath == null) {
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
280 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
281 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
282 }
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
283
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
284 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
285 }
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
288 /**
840
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
289 * Returns the URL for calling the MapServer.
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
290 *
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
291 * @return the url for calling the MapServer.
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
292 */
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
293 protected String getMapServerUrl() {
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
294 if (mapServerUrl == null) {
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
295 mapServerUrl = Config.getStringXPath(MAPSERVER_URL);
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
296 mapServerUrl = Config.replaceConfigDir(mapServerUrl);
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
297 }
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
298
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
299 return mapServerUrl;
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
300 }
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
301
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
302
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
303 /**
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
304 * Returns a template specified by <i>model</i>.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
305 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
306 * @param model The name of the template.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
307 * @return a template.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
308 */
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
309 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
310 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
311 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
312 }
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
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 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
315 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
316 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
317 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
318 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
319 }
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
624
6a3a1da5e680 Improved velocity configuration.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 623
diff changeset
321 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
322 }
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 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
324 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
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 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
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
331 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
332 * Returns the mapfile template.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
333 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
334 * @return the mapfile template.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
335 * @throws Exception if an error occured while reading the configuration.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
336 */
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
337 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
338 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
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 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
341 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
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
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
345 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
346 * Returns the base directory storing the shapefiles.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
347 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
348 * @return the shapefile base directory.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
349 */
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
350 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
351 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
352 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
353 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
354 }
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
355
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
356 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
357 }
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
358
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
359
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
360 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
361 * Returns the mapfile.
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
362 *
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
363 * @return the mapfile.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
364 */
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
365 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
366 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
367 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
368 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
369 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
370 }
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
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
372 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
373 }
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
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
376 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
377 * Search for meta information file in <i>file</i> and store the layer
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
378 * information in <i>store</i> if a meta file was found.
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
379 *
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
380 * @param file The root directory to be searched for meta files.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
381 * @param store A list storing <code>LayerInfo</code> objects.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
382 */
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
383 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
384 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
385 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
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 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
388 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
389 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
390 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
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 }
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 }
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 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
395 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
396
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 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
398 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
399 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
400 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
401 }
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 }
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 }
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 }
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
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
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
407 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
408 * Parses a meta information file and returns necessary information as
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
409 * <code>LayerInfo</code> array.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
410 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
411 * @param file Meta information file.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
412 * @return Array of LayerInfo objects.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
413 */
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
414 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
415 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
416 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
417
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
418 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
419 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
420 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
421 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
422 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
423
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
424 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
425 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
426 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
427
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
428 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
429 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
430 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
431 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
432 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
433 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
434 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
435
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
436 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
437 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
438
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
439
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
440 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
441 * Parses a node storing layer information and returns them.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
442 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
443 * @param layer Node storing information about a layer.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
444 * @return a LayerInfo object.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
445 */
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
446 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
447 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
448
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
449 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
450 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
451 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
452 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
453
730
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
454 String title = parseLayerAttr(layer, XPATH_LAYER_TITLE);
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
455 if (title != null && !title.equals("")) {
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
456 info.setTitle(title);
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
457 }
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
458 else {
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
459 info.setTitle(name);
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
460 }
452fad121560 Implemented code for changing the title of a wms layer (issue198).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 724
diff changeset
461
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
462 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
463 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
464 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
465 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
466
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
467 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
468 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
469 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
470 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
471
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
472 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
473 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
474 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
475 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
476
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
477 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
478 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
479 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
480 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
481
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
482 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
483 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
484
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
485
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
486 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
487 * Parses attributes in layer nodes.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
488 *
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
489 * @param node A node containing layer information.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
490 * @param xpath XPath specifying an attribute.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
491 * @return Attribute as string.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
492 */
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
493 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
494 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
495 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
496 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
497 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
498 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
499 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
500
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
501
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
502 /**
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
503 * Creates a mapfile with the layer information stored in <i>layers</i>.
807
a645bd23c1c8 Added more javadoc. Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 806
diff changeset
504 *
806
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
505 * @param layers Layer information.
2cea76f1112e Added Javadoc in utils package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 798
diff changeset
506 */
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
507 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
508 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
509
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
510 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
511 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
512 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
513 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
514
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
515 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
516 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
517 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
518
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
519 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
520 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
521 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
522
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
523 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
524 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
525 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
526 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
527 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
528 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
529 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
530 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
531 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
532
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
533 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
534 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
535 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
536
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
537 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
538 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
539
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
540 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
541 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
542
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
543 VelocityContext context = new VelocityContext();
840
47578d91c4f0 Added a metadata section into the mapfile and feed it with the MapServer URL (issue235).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 807
diff changeset
544 context.put("MAPSERVERURL", getMapServerUrl());
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
545 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
546
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
547 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
548 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
549 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
550 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
551 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
552
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
553 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
554
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
555 // 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
556 // 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
557 // 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
558 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
559 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
560 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
561 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
562 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
563 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
564 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
565 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
566 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
567 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
568 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
569 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
570 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
571 // 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
572 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
573 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
574 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
575
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
576 // 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
577 // 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
578 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
579 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
580 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
581 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
582 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
583 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
584 }
89aca25642d6 Implemented method stubs of MapfileGenerator. Mapfiles are successfully created corresponding meta.xml files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 621
diff changeset
585 }
621
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
586 }
567216b56983 Added MapfileGenerator stub and MapfileGenerator calls after writing and removing shapefiles.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
587 }
798
6cff63d0c434 Fixed vim modeline. Added some Javadoc.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 780
diff changeset
588 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org