From 0acb19829d4c4aea6d776b48f377a10e10c0a8e2 Mon Sep 17 00:00:00 2001 From: Dennis Kao <ulysseskao@gmail.com> Date: Tue, 08 Oct 2013 16:45:47 +0800 Subject: [PATCH] update for geotools 10.x --- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/DummyFeatureConvertShpJobContext.java | 21 +- xdgnjobs/pom.xml | 28 ++ xdgnjobs/ximple-dgnio/pom.xml | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java | 22 +- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/IndexDgnConvertShpJobContext.java | 17 + xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/OracleConvertShapefilesJobContext.java | 22 +- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/GeoserverIntegrateConfigJob.java | 3 xdgnjobs/ximple-spatialjob/pom.xml | 2 xdgnjobs/ximple-jobcarrier/quartz_jobs.xml | 330 ++++++++++++++++++------------------ xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DummyFeatureConvertJobContext.java | 20 + xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/FeatureDgnConvertShpJobContext.java | 21 +- 11 files changed, 263 insertions(+), 225 deletions(-) diff --git a/xdgnjobs/pom.xml b/xdgnjobs/pom.xml index 458e073..eadbcff 100644 --- a/xdgnjobs/pom.xml +++ b/xdgnjobs/pom.xml @@ -19,7 +19,7 @@ <src.output>${basedir}/target</src.output> <java5>1.6</java5> <xdgnio.version>2.0.0</xdgnio.version> - <gt.version>9.5.x</gt.version> + <gt.version>10.0.x</gt.version> <failIfNoTests>false</failIfNoTests> <stress.skip.pattern></stress.skip.pattern> <online.skip.pattern></online.skip.pattern> @@ -142,7 +142,7 @@ <dependency> <groupId>commons-pool</groupId> <artifactId>commons-pool</artifactId> - <version>1.5.6</version> + <version>1.6</version> </dependency> <dependency> <groupId>commons-logging</groupId> @@ -158,6 +158,11 @@ <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.2</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>2.4</version> </dependency> <dependency> <groupId>log4j</groupId> @@ -251,7 +256,7 @@ <dependency> <groupId>org.jdom</groupId> <artifactId>jdom</artifactId> - <version>1.1</version> + <version>1.1.3</version> </dependency> <dependency> @@ -317,7 +322,7 @@ <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> - <version>2.2.0</version> + <version>2.2.1</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> @@ -328,7 +333,7 @@ <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz-jobs</artifactId> - <version>2.2.0</version> + <version>2.2.1</version> </dependency> <dependency> <groupId>org.slf4j</groupId> @@ -354,19 +359,20 @@ <dependency> <groupId>it.geosolutions</groupId> <artifactId>geoserver-manager</artifactId> - <version>1.5.2</version> + <!--version>1.5.2</version--> + <version>1.6-SNAPSHOT</version> </dependency> <dependency> <groupId>xerces</groupId> <artifactId>xercesImpl</artifactId> - <version>2.9.1</version> + <version>2.11.0</version> </dependency> <!-- Tests or legacy --> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> - <version>6.8.5</version> + <version>6.8.7</version> <scope>test</scope> </dependency> </dependencies> @@ -434,6 +440,12 @@ <dependency> <groupId>it.geosolutions</groupId> <artifactId>geoserver-manager</artifactId> + <exclusions> + <exclusion> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> diff --git a/xdgnjobs/ximple-dgnio/pom.xml b/xdgnjobs/ximple-dgnio/pom.xml index 9fbbaac..2bd3947 100644 --- a/xdgnjobs/ximple-dgnio/pom.xml +++ b/xdgnjobs/ximple-dgnio/pom.xml @@ -74,8 +74,6 @@ <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> - <version>2.4</version> - <scope>test</scope> </dependency> </dependencies> diff --git a/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml b/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml index 72fe508..61f805e 100644 --- a/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml +++ b/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml @@ -1,165 +1,165 @@ -<?xml version='1.0' encoding='utf-8'?> - -<job-scheduling-data xmlns="http://www.quartz-scheduler.org/xml/JobSchedulingData" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd" - version="1.8"> - - <pre-processing-commands> - <delete-jobs-in-group>*</delete-jobs-in-group> <!-- clear all jobs in scheduler --> - <delete-triggers-in-group>*</delete-triggers-in-group> <!-- clear all triggers in scheduler --> - </pre-processing-commands> - - <processing-directives> - <!-- if there are any jobs/trigger in scheduler of same name (as in this file), overwrite them --> - <overwrite-existing-data>true</overwrite-existing-data> - <!-- if there are any jobs/trigger in scheduler of same name (as in this file), and over-write is false, ignore them rather then generating an error --> - <ignore-duplicates>false</ignore-duplicates> - </processing-directives> - - <schedule> - <job> - <name>ConvertDMMS2PostGisWithGeoserver</name> - <group>DEFAULT</group> - <description>A job that convert dgn to postgis</description> - <!--job-class>com.ximple.eofms.jobs.OracleConvertDgn2PostGISJob</job-class--> - <job-class>com.ximple.eofms.jobs.GeoserverIntegrateConfigJob</job-class> - <!--volatility>false</volatility--> - <durability>false</durability> - <recover>false</recover> - <!--job-data-map allows-transient-data="true"--> - <job-data-map> - <entry> - <key>JOBDATA_DIR</key> - <!--value>/Users/Shared/Public/Projects/XGeoDMMS/xjobrun/nstpcjobs/jobdata</value--> - <value>/mnt/hdisk/home.data/private/projects/xdcad/xjobrun/nntpcjobs/jobdata</value> - </entry> - <entry> - <key>PGHOST</key> - <value>192.168.11.99</value> - </entry> - <entry> - <key>PGDATBASE</key> - <value>pgNNTPC</value> - </entry> - <entry> - <key>PGPORT</key> - <value>5432</value> - </entry> - <entry> - <key>PGSCHEMA</key> - <value>public</value> - </entry> - <entry> - <key>PGUSER</key> - <value>tpcdb</value> - </entry> - <entry> - <key>PGPASS</key> - <value>simple000</value> - </entry> - <entry> - <key>ORAHOST</key> - <value>10.10.1.3</value> - </entry> - <entry> - <key>ORAINST</key> - <value>orcl</value> - </entry> - <entry> - <key>ORAPORT</key> - <value>1521</value> - </entry> - <entry> - <key>ORAUSER</key> - <value>system</value> - </entry> - <entry> - <key>ORAPASS</key> - <value>simple000</value> - </entry> - <entry> - <key>ORGSCHEMA</key> - <!--value>SPATIALDB</value--> - <value>SPATIALDB, CMMS_SPATIALDB</value> - </entry> - <entry> - <key>CONVERTDB</key> - <value>true</value> - </entry> - <entry> - <key>CONVERTFILE</key> - <value>true</value> - </entry> - <entry> - <key>CONVERTELEMIN</key> - <value>false</value> - </entry> - <entry> - <key>CREATEDUMMY</key> - <value>false</value> - </entry> - <entry> - <key>ELEMLOG</key> - <value>true</value> - </entry> - <entry> - <key>USEWKB</key> - <value>true</value> - </entry> - <entry> - <key>TESTMODE</key> - <value>false</value> - </entry> - <entry> - <key>TESTCOUNT</key> - <value>2</value> - </entry> - <entry> - <key>COPYCONNECTIVITYMODE</key> - <value>true</value> - </entry> - <entry> - <key>PROFILEMODE</key> - <value>true</value> - </entry> - <entry> - <key>USEZONE121</key> - <value>true</value> - </entry> - <entry> - <key>GEOSERVER_URL</key> - <value>http://192.168.11.99:8780/geoserver</value> - </entry> - <entry> - <key>GEOSERVER_USER</key> - <value>admin</value> - </entry> - <entry> - <key>GEOSERVER_PASS</key> - <value>geoserver</value> - </entry> - <entry> - <key>IGNORE_DBETL</key> - <value>true</value> - </entry> - </job-data-map> - </job> - - <trigger> - <simple> - <name>convertTrigger</name> - <group>DEFAULT</group> - <job-name>ConvertDMMS2PostGisWithGeoserver</job-name> - <job-group>DEFAULT</job-group> - <start-time>2011-03-01T18:00:00</start-time> - <!-- repeat indefinitely every 10 seconds --> - <repeat-count>0</repeat-count> - <repeat-interval>500</repeat-interval> - <!-- <repeat-interval>72000000</repeat-interval> --> - </simple> - </trigger> - - </schedule> - -</job-scheduling-data> +<?xml version='1.0' encoding='utf-8'?> + +<job-scheduling-data xmlns="http://www.quartz-scheduler.org/xml/JobSchedulingData" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd" + version="1.8"> + + <pre-processing-commands> + <delete-jobs-in-group>*</delete-jobs-in-group> <!-- clear all jobs in scheduler --> + <delete-triggers-in-group>*</delete-triggers-in-group> <!-- clear all triggers in scheduler --> + </pre-processing-commands> + + <processing-directives> + <!-- if there are any jobs/trigger in scheduler of same name (as in this file), overwrite them --> + <overwrite-existing-data>true</overwrite-existing-data> + <!-- if there are any jobs/trigger in scheduler of same name (as in this file), and over-write is false, ignore them rather then generating an error --> + <ignore-duplicates>false</ignore-duplicates> + </processing-directives> + + <schedule> + <job> + <name>ConvertDMMS2PostGisWithGeoserver</name> + <group>DEFAULT</group> + <description>A job that convert dgn to postgis</description> + <!--job-class>com.ximple.eofms.jobs.OracleConvertDgn2PostGISJob</job-class--> + <job-class>com.ximple.eofms.jobs.GeoserverIntegrateConfigJob</job-class> + <!--volatility>false</volatility--> + <durability>false</durability> + <recover>false</recover> + <!--job-data-map allows-transient-data="true"--> + <job-data-map> + <entry> + <key>JOBDATA_DIR</key> + <!--value>/Users/Shared/Public/Projects/XGeoDMMS/xjobrun/nstpcjobs/jobdata</value--> + <value>/mnt/hdisk/home.data/private/projects/xdcad/xjobrun/nntpcjobs/jobdata</value> + </entry> + <entry> + <key>PGHOST</key> + <value>192.168.11.99</value> + </entry> + <entry> + <key>PGDATBASE</key> + <value>pgNNTPC</value> + </entry> + <entry> + <key>PGPORT</key> + <value>5432</value> + </entry> + <entry> + <key>PGSCHEMA</key> + <value>public</value> + </entry> + <entry> + <key>PGUSER</key> + <value>tpcdb</value> + </entry> + <entry> + <key>PGPASS</key> + <value>simple000</value> + </entry> + <entry> + <key>ORAHOST</key> + <value>10.10.1.3</value> + </entry> + <entry> + <key>ORAINST</key> + <value>orcl</value> + </entry> + <entry> + <key>ORAPORT</key> + <value>1521</value> + </entry> + <entry> + <key>ORAUSER</key> + <value>system</value> + </entry> + <entry> + <key>ORAPASS</key> + <value>simple000</value> + </entry> + <entry> + <key>ORGSCHEMA</key> + <!--value>SPATIALDB</value--> + <value>SPATIALDB, CMMS_SPATIALDB</value> + </entry> + <entry> + <key>CONVERTDB</key> + <value>true</value> + </entry> + <entry> + <key>CONVERTFILE</key> + <value>true</value> + </entry> + <entry> + <key>CONVERTELEMIN</key> + <value>false</value> + </entry> + <entry> + <key>CREATEDUMMY</key> + <value>false</value> + </entry> + <entry> + <key>ELEMLOG</key> + <value>true</value> + </entry> + <entry> + <key>USEWKB</key> + <value>true</value> + </entry> + <entry> + <key>TESTMODE</key> + <value>false</value> + </entry> + <entry> + <key>TESTCOUNT</key> + <value>2</value> + </entry> + <entry> + <key>COPYCONNECTIVITYMODE</key> + <value>true</value> + </entry> + <entry> + <key>PROFILEMODE</key> + <value>true</value> + </entry> + <entry> + <key>USEZONE121</key> + <value>true</value> + </entry> + <entry> + <key>GEOSERVER_URL</key> + <value>http://192.168.11.99:8180/geoserver</value> + </entry> + <entry> + <key>GEOSERVER_USER</key> + <value>admin</value> + </entry> + <entry> + <key>GEOSERVER_PASS</key> + <value>geoserver</value> + </entry> + <entry> + <key>IGNORE_DBETL</key> + <value>true</value> + </entry> + </job-data-map> + </job> + + <trigger> + <simple> + <name>convertTrigger</name> + <group>DEFAULT</group> + <job-name>ConvertDMMS2PostGisWithGeoserver</job-name> + <job-group>DEFAULT</job-group> + <start-time>2011-03-01T18:00:00</start-time> + <!-- repeat indefinitely every 10 seconds --> + <repeat-count>0</repeat-count> + <repeat-interval>500</repeat-interval> + <!-- <repeat-interval>72000000</repeat-interval> --> + </simple> + </trigger> + + </schedule> + +</job-scheduling-data> diff --git a/xdgnjobs/ximple-spatialjob/pom.xml b/xdgnjobs/ximple-spatialjob/pom.xml index f68ad98..037041c 100644 --- a/xdgnjobs/ximple-spatialjob/pom.xml +++ b/xdgnjobs/ximple-spatialjob/pom.xml @@ -18,7 +18,7 @@ <url>http://www.ximple.com.tw</url> <properties> - <xdgnio.version>1.3.1</xdgnio.version> + <xdgnio.version>2.0.0</xdgnio.version> </properties> <description> diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DummyFeatureConvertJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DummyFeatureConvertJobContext.java index 32570d7..52abd18 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DummyFeatureConvertJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/DummyFeatureConvertJobContext.java @@ -10,6 +10,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.TimeZone; import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; import com.ximple.eofms.filter.ElementDispatchableFilter; @@ -32,8 +33,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.geotools.feature.SchemaException; import org.opengis.feature.IllegalAttributeException; import org.opengis.feature.simple.SimpleFeature; @@ -177,15 +176,24 @@ ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), true, Charset.forName("UTF-8")); */ + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + shapefileDataStore.setNamespaceURI(namespace.toString()); + } + */ + shapefileDataStore.setMemoryMapped(true); + // shapefileDataStore.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(true); + shapefileDataStore.setIndexCreationEnabled(true); + if (!sfile.exists()) { - ShapefileDataStore shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); shapefileDataStore.createSchema(featureType); writer = shapefileDataStore.getFeatureWriter(featureType.getTypeName(), Transaction.AUTO_COMMIT); } else { - ShapefileDataStore shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); writer = shapefileDataStore.getFeatureWriterAppend(featureType.getTypeName(), Transaction.AUTO_COMMIT); } diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/GeoserverIntegrateConfigJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/GeoserverIntegrateConfigJob.java index 6aaa5da..5e2aa03 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/GeoserverIntegrateConfigJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/GeoserverIntegrateConfigJob.java @@ -67,6 +67,7 @@ private static final int SRSID_TWD97_ZONE119 = 3825; private static final int SRSID_TWD97_ZONE121 = 3826; public static final String DEFAULT_STORENAME = "pgDMMS"; + public static final String DEFAULT_GEODMMS_NAMESPACE = "http://tpc.ximple.com.tw/geodmms"; private static XGeosDataConfigMapping xgeosDataConfigMapping = null; @@ -670,7 +671,7 @@ GeoServerRESTPublisher publisher = manager.getPublisher(); if (!found) { - publisher.createWorkspace(DEFAULT_NAMESPACE, new URI("http://tpc.ximple.com.tw/geodmms")); + publisher.createWorkspace(DEFAULT_NAMESPACE, new URI(DEFAULT_GEODMMS_NAMESPACE)); } RESTDataStore dataStore = reader.getDatastore(DEFAULT_NAMESPACE, DEFAULT_STORENAME); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/DummyFeatureConvertShpJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/DummyFeatureConvertShpJobContext.java index 294ec52..b5f79e2 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/DummyFeatureConvertShpJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/DummyFeatureConvertShpJobContext.java @@ -10,6 +10,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.TimeZone; import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; import com.ximple.eofms.filter.ElementDispatchableFilter; @@ -31,8 +32,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.geotools.feature.SchemaException; import org.opengis.feature.IllegalAttributeException; import org.opengis.feature.simple.SimpleFeature; @@ -173,16 +172,20 @@ if (featuresWriterContext.containsKey(featureType.getTypeName())) { writer = featuresWriterContext.get(featureType.getTypeName()); } else { - ShapefileDataStore shapefileDataStore; boolean existFile = sfile.exists(); - if (!withIndex) { - shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), - true, Charset.forName("UTF-8")); - } else { - shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + store.setNamespaceURI(namespace.toString()); } + */ + shapefileDataStore.setMemoryMapped(true); + // store.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(withIndex); + shapefileDataStore.setIndexCreationEnabled(withIndex); if (!existFile) { shapefileDataStore.createSchema(featureType); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/FeatureDgnConvertShpJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/FeatureDgnConvertShpJobContext.java index 6134e18..5d35dc5 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/FeatureDgnConvertShpJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/FeatureDgnConvertShpJobContext.java @@ -10,6 +10,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.TimeZone; import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; import com.ximple.eofms.filter.ElementDispatcher; @@ -27,8 +28,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.geotools.feature.SchemaException; import org.opengis.feature.IllegalAttributeException; import org.opengis.feature.simple.SimpleFeature; @@ -161,16 +160,20 @@ if (featuresWriterContext.containsKey(featureType.getTypeName())) { writer = featuresWriterContext.get(featureType.getTypeName()); } else { - ShapefileDataStore shapefileDataStore = null; boolean existFile = sfile.exists(); - if (!withIndex) { - shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), - true, Charset.forName("UTF-8")); - } else { - shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + shapefileDataStore.setNamespaceURI(namespace.toString()); } + */ + shapefileDataStore.setMemoryMapped(true); + // shapefileDataStore.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(withIndex); + shapefileDataStore.setIndexCreationEnabled(withIndex); if (!existFile) { shapefileDataStore.createSchema(featureType); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java index b290c17..c22b317 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java @@ -10,6 +10,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.TimeZone; import java.util.TreeMap; import com.vividsolutions.jts.geom.Geometry; @@ -36,8 +37,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.geotools.feature.SchemaException; import org.geotools.feature.simple.SimpleFeatureBuilder; import org.geotools.feature.simple.SimpleFeatureTypeBuilder; @@ -140,16 +139,19 @@ if (featuresWriterContext.containsKey(featureType.getTypeName())) { writer = featuresWriterContext.get(featureType.getTypeName()); } else { - ShapefileDataStore shapefileDataStore = null; boolean existFile = sfile.exists(); - - if (!withIndex) { - shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), - true, Charset.forName("UTF-8")); - } else { - shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + shapefileDataStore.setNamespaceURI(namespace.toString()); } + */ + shapefileDataStore.setMemoryMapped(true); + // shapefileDataStore.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(withIndex); + shapefileDataStore.setIndexCreationEnabled(withIndex); if (!existFile) { shapefileDataStore.createSchema(featureType); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/IndexDgnConvertShpJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/IndexDgnConvertShpJobContext.java index 24e39d4..85010ea 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/IndexDgnConvertShpJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/IndexDgnConvertShpJobContext.java @@ -11,6 +11,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.TimeZone; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Envelope; @@ -33,8 +34,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.geotools.feature.SchemaException; import org.geotools.feature.simple.SimpleFeatureBuilder; import org.geotools.feature.simple.SimpleFeatureTypeBuilder; @@ -156,8 +155,18 @@ ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), true, Charset.forName("UTF-8")); */ - ShapefileDataStore shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + shapefileDataStore.setNamespaceURI(namespace.toString()); + } + */ + shapefileDataStore.setMemoryMapped(true); + // shapefileDataStore.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(true); + shapefileDataStore.setIndexCreationEnabled(true); shapefileDataStore.createSchema(featureType); writer = shapefileDataStore.getFeatureWriter(featureType.getTypeName(), Transaction.AUTO_COMMIT); featuresWriterContext.put(featureType.getTypeName(), writer); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/OracleConvertShapefilesJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/OracleConvertShapefilesJobContext.java index f611fa4..78e1503 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/OracleConvertShapefilesJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/OracleConvertShapefilesJobContext.java @@ -12,6 +12,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.Properties; +import java.util.TimeZone; import com.vividsolutions.jts.util.Assert; import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; @@ -31,8 +32,6 @@ import org.geotools.data.FeatureWriter; import org.geotools.data.Transaction; import org.geotools.data.shapefile.ShapefileDataStore; -import org.geotools.data.shapefile.indexed.IndexType; -import org.geotools.data.shapefile.indexed.IndexedShapefileDataStore; import org.opengis.feature.IllegalAttributeException; import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.simple.SimpleFeatureType; @@ -190,16 +189,19 @@ if (featuresWriterContext.containsKey(featureType.getTypeName())) { writer = featuresWriterContext.get(featureType.getTypeName()); } else { - ShapefileDataStore shapefileDataStore; boolean existFile = sfile.exists(); - - if (!withIndex) { - shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL(), - true, Charset.forName("UTF-8")); - } else { - shapefileDataStore = new IndexedShapefileDataStore(sfile.toURI().toURL(), - null, true, true, IndexType.QIX, Charset.forName("UTF-8")); + ShapefileDataStore shapefileDataStore = new ShapefileDataStore(sfile.toURI().toURL()); + /* + if(namespace != null) { + shapefileDataStore.setNamespaceURI(namespace.toString()); } + */ + shapefileDataStore.setMemoryMapped(true); + // shapefileDataStore.setBufferCachingEnabled(cacheMemoryMaps); + shapefileDataStore.setCharset(Charset.forName("UTF-8")); + shapefileDataStore.setTimeZone(TimeZone.getDefault()); + shapefileDataStore.setIndexed(withIndex); + shapefileDataStore.setIndexCreationEnabled(withIndex); if (!existFile) { shapefileDataStore.createSchema(featureType); -- Gitblit v0.0.0-SNAPSHOT