From daf48e225fc4323cb986a5f5a18be279fb1a40a7 Mon Sep 17 00:00:00 2001 From: Dennis Kao <ulysseskao@gmail.com> Date: Tue, 06 Aug 2013 15:00:57 +0800 Subject: [PATCH] add reset geoserver config --- xdgnjobs/ximple-jobcarrier/pom.xml | 4 + xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java | 12 ++++ xdgnjobs/ximple-jobcarrier/src/main/resources/quartz.properties | 1 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/OracleConvertGeoServerContext.java | 15 ++-- xdgnjobs/ximple-spatialjob/pom.xml | 8 ++ xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java | 53 ++++++++--------- xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs.xml | 18 +++++ xdgnjobs/ximple-jobcarrier/src/main/java/com/ximple/eofms/XQuartzJobCarrier.java | 4 xdgnjobs/pom.xml | 26 ++++---- xdgnjobs/ximple-jobcarrier/quartz.properties | 4 - xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs_edb.xml | 1 xdgnjobs/ximple-jobcarrier/quartz_jobs.xml | 31 ++++++++-- xdgnjobs/ximple-jobcarrier/log4j.properties | 3 13 files changed, 118 insertions(+), 62 deletions(-) diff --git a/xdgnjobs/pom.xml b/xdgnjobs/pom.xml index 2f6d278..c3c95b1 100644 --- a/xdgnjobs/pom.xml +++ b/xdgnjobs/pom.xml @@ -137,7 +137,7 @@ <groupId>org.apache.commons</groupId> <artifactId>commons-digester3</artifactId> <version>3.2</version> - <classifier>with-deps</classifier> + <!--classifier>with-deps</classifier--> </dependency> <dependency> <groupId>commons-pool</groupId> @@ -260,14 +260,6 @@ <version>1.7</version> </dependency> - <!-- We need this to make the referencing module useful --> - <dependency> - <groupId>org.geotools</groupId> - <artifactId>gt-epsg-hsql</artifactId> - <version>${gt.version}</version> - <scope>test</scope> - </dependency> - <!-- ORACLE --> <!-- Download and install into your own repo --> <dependency> @@ -334,14 +326,24 @@ </exclusions> </dependency> <dependency> + <groupId>org.quartz-scheduler</groupId> + <artifactId>quartz-jobs</artifactId> + <version>2.2.0</version> + </dependency> + <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> - <version>1.5.11</version> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> - <version>1.5.11</version> + <version>1.7.5</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>jcl-over-slf4j</artifactId> + <version>1.7.5</version> </dependency> <dependency> <groupId>org.awl</groupId> @@ -387,7 +389,7 @@ <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-digester3</artifactId> - <classifier>with-deps</classifier> + <!--classifier>with-deps</classifier--> </dependency> <dependency> <groupId>commons-pool</groupId> diff --git a/xdgnjobs/ximple-jobcarrier/log4j.properties b/xdgnjobs/ximple-jobcarrier/log4j.properties index 2498586..a3a40c6 100644 --- a/xdgnjobs/ximple-jobcarrier/log4j.properties +++ b/xdgnjobs/ximple-jobcarrier/log4j.properties @@ -1,5 +1,5 @@ # Create stdout appender -log4j.rootLogger=error, logfile, stdout +log4j.rootLogger=info, logfile, stdout # Configure the stdout appender to go to the Console log4j.appender.stdout=org.apache.log4j.ConsoleAppender @@ -25,4 +25,5 @@ # Print messages of level INFO or above for examples log4j.logger.org.cavaness.quartzbook=INFO +log4j.logger.org.quartz=DEBUG log4j.logger.com.ximple.eofms=DEBUG \ No newline at end of file diff --git a/xdgnjobs/ximple-jobcarrier/pom.xml b/xdgnjobs/ximple-jobcarrier/pom.xml index 59b8bec..40864bc 100644 --- a/xdgnjobs/ximple-jobcarrier/pom.xml +++ b/xdgnjobs/ximple-jobcarrier/pom.xml @@ -94,6 +94,10 @@ <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>jcl-over-slf4j</artifactId> + </dependency> <dependency> <groupId>javax.transaction</groupId> diff --git a/xdgnjobs/ximple-jobcarrier/quartz.properties b/xdgnjobs/ximple-jobcarrier/quartz.properties index 3778881..e491e0d 100644 --- a/xdgnjobs/ximple-jobcarrier/quartz.properties +++ b/xdgnjobs/ximple-jobcarrier/quartz.properties @@ -22,11 +22,9 @@ #=============================================================== org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin -org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin - +org.quartz.plugin.jobInitializer.class: org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin org.quartz.plugin.jobInitializer.fileNames = quartz_jobs.xml #org.quartz.plugin.jobInitializer.fileNames = quartz_jobs_edb.xml - org.quartz.plugin.jobInitializer.failOnFileNotFound = true org.quartz.plugin.jobInitializer.scanInterval = 10 org.quartz.plugin.jobInitializer.wrapInUserTransaction = false diff --git a/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml b/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml index 1bd14c2..41fa6ff 100644 --- a/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml +++ b/xdgnjobs/ximple-jobcarrier/quartz_jobs.xml @@ -1,9 +1,9 @@ <?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"> + 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 --> @@ -19,10 +19,11 @@ <schedule> <job> - <name>ConvertDgn2PostGisIntoPostgre</name> + <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.OracleConvertDgn2PostGISJob</job-class--> + <job-class>com.ximple.eofms.jobs.GeoserverIntegrateConfigJob</job-class> <!--volatility>false</volatility--> <durability>false</durability> <recover>false</recover> @@ -30,7 +31,7 @@ <job-data-map> <entry> <key>JOBDATA_DIR</key> - <value>/mnt/hdisk/home.data/private/projects/xdcad/xjobrun/nstpcjobs/jobdata</value> + <value>/Users/Shared/Public/Projects/XGeoDMMS/xjobrun/nstpcjobs/jobdata</value> </entry> <entry> <key>PGHOST</key> @@ -125,6 +126,22 @@ <key>USEZONE121</key> <value>true</value> </entry> + <entry> + <key>GEOSERVER_URL</key> + <value>http://10.10.1.6:8080/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> @@ -132,7 +149,7 @@ <simple> <name>convertTrigger</name> <group>DEFAULT</group> - <job-name>ConvertDgn2PostGisIntoPostgre</job-name> + <job-name>ConvertDMMS2PostGisWithGeoserver</job-name> <job-group>DEFAULT</job-group> <start-time>2011-03-01T18:00:00</start-time> <!-- repeat indefinitely every 10 seconds --> diff --git a/xdgnjobs/ximple-jobcarrier/src/main/java/com/ximple/eofms/XQuartzJobCarrier.java b/xdgnjobs/ximple-jobcarrier/src/main/java/com/ximple/eofms/XQuartzJobCarrier.java index a2af3ee..a625b7c 100644 --- a/xdgnjobs/ximple-jobcarrier/src/main/java/com/ximple/eofms/XQuartzJobCarrier.java +++ b/xdgnjobs/ximple-jobcarrier/src/main/java/com/ximple/eofms/XQuartzJobCarrier.java @@ -35,7 +35,7 @@ static Log logger = LogFactory.getLog(XQuartzJobCarrier.class); static Options options = new Options(); - private static final String VERSION = "1.2.0"; + private static final String VERSION = "1.3.1"; public static void main(String[] args) { XQuartzJobCarrier instance = new XQuartzJobCarrier(); @@ -138,7 +138,7 @@ } catch (SchedulerException ex) { // deal with any exceptions - logger.error(ex); + logger.error(ex, ex); shutdown = true; } catch (Throwable throwable) { logger.error(throwable.getMessage(), throwable); diff --git a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz.properties b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz.properties index 7341499..15de783 100644 --- a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz.properties +++ b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz.properties @@ -23,7 +23,6 @@ org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin - org.quartz.plugin.jobInitializer.fileNames = quartz_jobs.xml #org.quartz.plugin.jobInitializer.fileNames = quartz_jobs_edb.xml diff --git a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs.xml b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs.xml index c001564..b7c4a37 100644 --- a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs.xml +++ b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs.xml @@ -22,7 +22,7 @@ <name>ConvertDgn2PostGisIntoPostgre</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> @@ -125,6 +125,22 @@ <key>USEZONE121</key> <value>true</value> </entry> + <entry> + <key>GEOSERVER_URL</key> + <value>http://www.ximple.com.tw/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> diff --git a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs_edb.xml b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs_edb.xml index 623bced..d625519 100644 --- a/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs_edb.xml +++ b/xdgnjobs/ximple-jobcarrier/src/main/resources/quartz_jobs_edb.xml @@ -24,6 +24,7 @@ <name>ConvertDgn2GeoSpatialIntoEdb</name> <group>DEFAULT</group> <description>A job that convert dgn to gdb spatial</description> + <!--job-class>com.ximple.eofms.jobs.OracleConvertDgn2EdbGeoJob</job-class--> <job-class>com.ximple.eofms.jobs.OracleConvertDgn2EdbGeoJob</job-class> <volatility>false</volatility> <durability>false</durability> diff --git a/xdgnjobs/ximple-spatialjob/pom.xml b/xdgnjobs/ximple-spatialjob/pom.xml index c1f8b9d..43f4526 100644 --- a/xdgnjobs/ximple-spatialjob/pom.xml +++ b/xdgnjobs/ximple-spatialjob/pom.xml @@ -56,6 +56,10 @@ <artifactId>quartz</artifactId> </dependency> <dependency> + <groupId>org.quartz-scheduler</groupId> + <artifactId>quartz-jobs</artifactId> + </dependency> + <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </dependency> @@ -63,6 +67,10 @@ <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>jcl-over-slf4j</artifactId> + </dependency> <dependency> <groupId>org.geotools</groupId> diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java index 4661fab..d063e1c 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java @@ -57,6 +57,7 @@ private static final String COPYCONNECTIVITYMODE = "COPYCONNECTIVITYMODE"; private static final String PROFILEMODE = "PROFILEMODE"; private static final String USEZONE121 = "USEZONE121"; + private static final String IGNORE_DBETL = "IGNORE_DBETL"; protected static OracleNGDataStoreFactory dataStoreFactory = new OracleNGDataStoreFactory(); @@ -78,6 +79,7 @@ protected boolean _profileMode = false; protected boolean _useZone121 = true; protected boolean _useTransform = true; + protected boolean _ignoreDBETL = false; protected int _testCount = -1; protected JDBCDataStore sourceDataStore; @@ -143,6 +145,8 @@ _copyConnectivityMode = dataMap.getBooleanFromString(COPYCONNECTIVITYMODE); _profileMode = dataMap.getBooleanFromString(PROFILEMODE); _useZone121 = dataMap.getBooleanFromString(USEZONE121); + _ignoreDBETL = dataMap.getBooleanFromString(IGNORE_DBETL); + if (_useZone121) { FeatureTypeBuilderUtil.setDefaultFeatureSRID(3826); } else { @@ -350,6 +354,14 @@ return _useZone121; } + public boolean isIgnoreDBETL() { + return _ignoreDBETL; + } + + public void set_ignoreDBETL(boolean _ignoreDBETL) { + this._ignoreDBETL = _ignoreDBETL; + } + public DataStore getSourceDataStore() { return sourceDataStore; } diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java index c5938a1..df6d3b8 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java @@ -115,7 +115,7 @@ boolean profileMode, boolean useTransform) { return new OracleConvertPostGISJobContext(getDataPath(), - getTargetDataStore(), targetSchemaName, filterPath, profileMode, useTransform); + getTargetDataStore(), targetSchemaName, filterPath, profileMode, useTransform); } protected void extractJobConfiguration(JobDetail jobDetail) throws JobExecutionException { @@ -187,6 +187,11 @@ // Log the time the job started logger.info(jobName + " fired at " + new Date()); extractJobConfiguration(jobDetail); + + if (isIgnoreDBETL()) { + return; + } + createSourceDataStore(); createTargetDataStore(); if (getSourceDataStore() == null) { @@ -234,18 +239,17 @@ OracleConvertPostGISJobContext jobContext = (OracleConvertPostGISJobContext) prepareJobContext(targetSchemaName, _filterPath, - isProfileMode(), isTransformed()); + isProfileMode(), isTransformed()); jobContext.setSourceDataStore(getSourceDataStore()); // jobContext.setConvertElementIn(_convertElementIn); jobContext.setElementLogging(checkElementLogging()); jobContext.setExecutionContext(context); - + createHibernateSequence(jobContext); long tStep = System.currentTimeMillis(); - if (isCopyConnectivityMode()) - { + if (isCopyConnectivityMode()) { copyConnectivity(jobContext); } @@ -344,8 +348,8 @@ private void copyConnectivity(OracleConvertPostGISJobContext jobContext) throws SQLException { Connection connection = jobContext.getOracleConnection(); ResultSet rsMeta = connection.getMetaData().getTables(null, "BASEDB", - AbstractOracleJobContext.CONNECTIVITY_WEBCHECK_NAME + "%", - new String[]{"TABLE"}); + AbstractOracleJobContext.CONNECTIVITY_WEBCHECK_NAME + "%", + new String[]{"TABLE"}); boolean found = false; try { @@ -384,16 +388,15 @@ } - private void createHibernateSequence(OracleConvertPostGISJobContext jobContext) throws SQLException { + private void createHibernateSequence(OracleConvertPostGISJobContext jobContext) throws SQLException { Connection connection = jobContext.getOracleConnection(); try { Statement stmt = connection.createStatement(); stmt.execute(AbstractOracleJobContext.CREATE_HIBERNATE_SEQUENCE); stmt.close(); - } catch (SQLException e) - { - logger.warn("HIBERNATE_SEQUENCE is already exist."); + } catch (SQLException e) { + logger.warn("HIBERNATE_SEQUENCE is already exist."); } } @@ -401,7 +404,7 @@ String querySchema, String targetSchemaName) throws SQLException { int order = 0; OrderedMap map = getBlobStorageList(jobContext.getOracleConnection(), - querySchema, "SD$SPACENODES", null); + querySchema, "SD$SPACENODES", null); logger.info("begin convert job:[" + map.size() + "]:testmode=" + _testMode); @@ -409,16 +412,16 @@ int step = total / 100; int current = 0; - if (total == 0) { + if (total == 0) { logger.warn("SELECT COUNT FROM " + querySchema + ".SD$SPACENODES is zero."); return; } - logger.warn("SELECT COUNT FROM " + querySchema + ".SD$SPACENODES is " + map.size() ); + logger.warn("SELECT COUNT FROM " + querySchema + ".SD$SPACENODES is " + map.size()); //jobContext.startTransaction(); jobContext.setCurrentSchema(querySchema); jobContext.getExecutionContext().put("ConvertDgn2PostGISJobProgress", 0); - for (OrderedMapIterator it = map.orderedMapIterator(); it.hasNext();) { + for (OrderedMapIterator it = map.orderedMapIterator(); it.hasNext(); ) { it.next(); Pair pair = (Pair) it.getValue(); @@ -444,16 +447,14 @@ System.runFinalization(); } - if( step != 0) - { + if (step != 0) { int now = order % step; if (now != current) { current = now; jobContext.getExecutionContext().put("ConvertDgn2PostGISJobProgress", current); } - }else - { + } else { jobContext.getExecutionContext().put("ConvertDgn2PostGISJobProgress", current); current++; } @@ -727,7 +728,7 @@ if (dgnFile.isDirectory()) continue; IndexDgnConvertPostGISJobContext convertContext = new IndexDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName, - isProfileMode(), isTransformed()); + isProfileMode(), isTransformed()); logger.info("--- start index dgnfile-" + dgnFile.toString() + " ---"); FileInputStream fs = null; FileChannel fc = null; @@ -774,8 +775,7 @@ } finally { convertContext.closeFeatureWriter(); - if (reader != null) - { + if (reader != null) { try { reader.close(); } catch (IOException e) { @@ -851,7 +851,7 @@ // } //} else { // if (element instanceof ShapeElement) { - convertContext.putFeatureCollection(element); + convertContext.putFeatureCollection(element); // } //} } @@ -886,7 +886,7 @@ GeneralDgnConvertPostGISJobContext convertContext = new GeneralDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName, - isProfileMode(), isTransformed()); + isProfileMode(), isTransformed()); logger.info("--- start other dgnfile-" + dgnFile.toString() + " ---"); FileInputStream fs = null; FileChannel fc; @@ -932,8 +932,7 @@ } finally { convertContext.closeFeatureWriter(); - if (reader != null) - { + if (reader != null) { try { reader.close(); } catch (IOException e) { @@ -1069,7 +1068,7 @@ for (File dgnFile : dgnFiles) { FeatureDgnConvertPostGISJobContext convertContext = new FeatureDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName, _filterPath, - isProfileMode(), isTransformed()); + isProfileMode(), isTransformed()); logger.info("--- start dgnfile-" + dgnFile.toString() + " ---"); try { convertContext.setExecutionContext(context); diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/OracleConvertGeoServerContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/OracleConvertGeoServerContext.java index 4864464..96ace1e 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/OracleConvertGeoServerContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/OracleConvertGeoServerContext.java @@ -1,11 +1,10 @@ package com.ximple.eofms.jobs.context.postgis; -/** - * Created with IntelliJ IDEA. - * User: ulysseskao - * Date: 13/8/2 - * Time: 下午4:01 - * To change this template use File | Settings | File Templates. - */ -public class OracleConvertGeoServerContext { +import org.geotools.data.DataStore; + +public class OracleConvertGeoServerContext extends OracleConvertPostGISJobContext { + + public OracleConvertGeoServerContext(String dataPath, DataStore pgDS, String targetSchema, String filterConfig, boolean profileMode, boolean useTransform) { + super(dataPath, pgDS, targetSchema, filterConfig, profileMode, useTransform); + } } -- Gitblit v0.0.0-SNAPSHOT