From aaf4c6c3a1d50b67b9a7dfd1bc011615ba5d9f57 Mon Sep 17 00:00:00 2001 From: ?? ? <ulysseskao@ximple.com.tw> Date: Fri, 06 Jun 2008 18:44:30 +0800 Subject: [PATCH] update for EOFM-115 --- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2OraSDOJob.java | 79 +++++++++++++++++++++------------------ 1 files changed, 43 insertions(+), 36 deletions(-) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2OraSDOJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2OraSDOJob.java index 1e9a236..9a3f93d 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2OraSDOJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2OraSDOJob.java @@ -1,61 +1,63 @@ package com.ximple.eofms.jobs; -import java.util.Date; -import java.sql.SQLException; -import java.sql.Statement; -import java.sql.ResultSet; -import java.sql.Types; -import java.io.IOException; import java.io.File; -import java.io.FilenameFilter; import java.io.FileInputStream; import java.io.FileNotFoundException; +import java.io.FilenameFilter; +import java.io.IOException; import java.math.BigDecimal; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.channels.FileChannel; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.Types; +import java.util.Date; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.commons.collections.OrderedMap; import org.apache.commons.collections.OrderedMapIterator; import org.apache.commons.collections.map.LinkedMap; -import org.quartz.JobExecutionContext; -import org.quartz.JobExecutionException; -import org.quartz.JobDetail; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.geotools.feature.IllegalAttributeException; import org.geotools.feature.SchemaException; +import org.quartz.JobDetail; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; import com.vividsolutions.jts.geom.GeometryFactory; import oracle.jdbc.OracleConnection; import oracle.jdbc.OracleResultSet; -import oracle.sql.BLOB; import oracle.sql.ARRAY; +import oracle.sql.BLOB; -import com.ximple.util.PrintfFormat; -import com.ximple.io.dgn7.Element; -import com.ximple.io.dgn7.Dgn7fileException; -import com.ximple.io.dgn7.ElementType; -import com.ximple.io.dgn7.IElementHandler; -import com.ximple.io.dgn7.ComplexElement; -import com.ximple.io.dgn7.Dgn7fileReader; -import com.ximple.io.dgn7.Lock; -import com.ximple.io.dgn7.TextElement; +import com.ximple.eofms.jobs.context.AbstractOracleJobContext; +import com.ximple.eofms.jobs.context.shapefile.FeatureDgnConvertShpJobContext; +import com.ximple.eofms.jobs.context.shapefile.GeneralDgnConvertShpJobContext; +import com.ximple.eofms.jobs.context.shapefile.IndexDgnConvertShpJobContext; +import com.ximple.eofms.jobs.context.shapefile.OracleConvertShapefilesJobContext; import com.ximple.eofms.util.BinConverter; import com.ximple.eofms.util.ByteArrayCompressor; import com.ximple.eofms.util.StringUtils; -import com.ximple.eofms.jobs.context.AbstractOracleJobContext; -import com.ximple.eofms.jobs.context.FeatureDgnConvertShpJobContext; -import com.ximple.eofms.jobs.context.GeneralDgnConvertShpJobContext; -import com.ximple.eofms.jobs.context.IndexDgnConvertShpJobContext; -import com.ximple.eofms.jobs.context.OracleConvertShapefilesJobContext; +import com.ximple.io.dgn7.ComplexElement; +import com.ximple.io.dgn7.Dgn7fileException; +import com.ximple.io.dgn7.Dgn7fileReader; +import com.ximple.io.dgn7.Element; +import com.ximple.io.dgn7.ElementType; +import com.ximple.io.dgn7.IElementHandler; +import com.ximple.io.dgn7.Lock; +import com.ximple.io.dgn7.TextElement; +import com.ximple.util.PrintfFormat; public class OracleConvertDgn2OraSDOJob extends AbstractOracleDatabaseJob { final static Log logger = LogFactory.getLog(OracleConvertDgn2OraSDOJob.class); - /** The Oracle driver class name */ + /** + * The Oracle driver class name + */ private static final String JDBC_DRIVER = "oracle.jdbc.driver.OracleDriver"; private static final int FETCHSIZE = 30; @@ -136,7 +138,7 @@ FeatureStore fs = (FeatureStore) dstore.getFeatureSource("ORA_TEST_POINTS"); fs.addFeatures(DataUtilities.collection(feature)); */ - + protected AbstractOracleJobContext prepareJobContext(String filterPath) { return new OracleConvertShapefilesJobContext(filterPath); @@ -153,6 +155,11 @@ // Log the time the job started logger.info(jobName + " fired at " + new Date()); extractJobConfiguration(jobDetail); + createSourceDataStore(); + if (getSourceDataStore() == null) + { + throw new JobExecutionException("Cannot connect source oracle database."); + } try { @@ -166,11 +173,7 @@ for (String orgSchema : _orgSchema) { OracleConvertShapefilesJobContext jobContext = (OracleConvertShapefilesJobContext) prepareJobContext(_filterPath); - jobContext.setConnectionInfo(_oracleHost, _oraclePort, _oracleInstance); - jobContext.setLogin(_username, _password); - jobContext.setShapeData(_dataPath); - jobContext.setConvertDB(_convertDB); - jobContext.setConvertFile(_convertFile); + jobContext.setSourceDataStore(getSourceDataStore()); jobContext.setConvertElementIn(_convertElementIn); jobContext.setElementLogging(checkElementLogging()); jobContext.setExecutionContext(context); @@ -207,6 +210,8 @@ logger.info("-- step:createDummyFeatureFile --"); createDummyFeatureFile(context); } + + disconnect(); } catch (SQLException e) { logger.warn(e.getMessage(), e); @@ -536,7 +541,8 @@ * �����ഫ�����ɪ��u�@ * * @param context �u�@�������� - * @throws org.quartz.JobExecutionException exception + * @throws org.quartz.JobExecutionException + * exception */ private void convertIndexDesignFile(JobExecutionContext context) throws JobExecutionException { @@ -665,7 +671,8 @@ * �����ഫ��L�]�p���ɪ��u�@ * * @param context jobContext - * @throws org.quartz.JobExecutionException exception + * @throws org.quartz.JobExecutionException + * exception */ private void convertOtherDesignFile(JobExecutionContext context) throws JobExecutionException { -- Gitblit v0.0.0-SNAPSHOT