forked from geodmms/xdgnjobs

?? ?
2008-05-05 3027b8a4438d105c275385356d5b90d264fb828c
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java
@@ -1,5 +1,6 @@
package com.ximple.eofms.jobs;
import java.io.IOException;
import java.math.BigDecimal;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
@@ -8,7 +9,6 @@
import java.sql.Statement;
import java.sql.Types;
import java.util.Date;
import java.io.IOException;
import org.apache.commons.collections.OrderedMap;
import org.apache.commons.collections.OrderedMapIterator;
@@ -87,32 +87,35 @@
        jobContext.setLogin(_username, _password);
        jobContext.setShapeData(_dataPath);
        jobContext.setExecutionContext(context);
        try
        {
            copyConnectivity(jobContext);
            exetcuteConvert(jobContext, _orgSchema, _dataPath);
            //exetcuteConvert(jobContext, "CMMS_SPATIALDB", _dataPath);
            for (String orgSchema : _orgSchema)
            {
                exetcuteConvert(jobContext, orgSchema, _dataPath);
            //close all open filewriter instance
            jobContext.closeFeatureWrite();
                //close all open filewriter instance
                jobContext.closeFeatureWrite();
            }
        } catch (SQLException e)
        {
            logger.warn(e.getMessage(), e);
            throw new JobExecutionException("Database error.", e);
        }   catch (IOException ex) {
        } catch (IOException ex)
        {
            ex.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
        }
    }
    //Connectivity½Æ»s¤@­Óª©¥»¡A¦b¬d¸ß¹q¬y¤è¦V®É¥Î¨Ó¤ñ¹ïOMS¸ê®Æ®wªº¹q¾¹³s±µ©Ê(Connectivity)
    private void copyConnectivity(OracleConvertJobContext jobContext)  throws SQLException
    private void copyConnectivity(OracleConvertJobContext jobContext) throws SQLException
    {
       OracleConnection connection =  jobContext.getOracleConnection() ;
       Statement stmt = connection.createStatement();
       stmt.execute(OracleConvertJobContext.TRUNCATE_CONNECTIVITY_WEBCHECK);
       stmt.execute(OracleConvertJobContext.COPY_CONNECTIVITY_TO_WEBCHECK);
        OracleConnection connection = jobContext.getOracleConnection();
        Statement stmt = connection.createStatement();
        stmt.execute(OracleConvertJobContext.TRUNCATE_CONNECTIVITY_WEBCHECK);
        stmt.execute(OracleConvertJobContext.COPY_CONNECTIVITY_TO_WEBCHECK);
    }
    private void exetcuteConvert(OracleConvertJobContext jobContext,
@@ -127,7 +130,7 @@
        int total = map.size(); //spacenodes count
        int step = total / 100;
        int current = 0;
        //jobContext.startTransaction();
        jobContext.getExecutionContext().put("ConvertDgn2ShpJobProgress", 0);
        for (OrderedMapIterator it = map.orderedMapIterator(); it.hasNext();)
@@ -262,7 +265,7 @@
        String fetchSrcStmt = spf.sprintf(new Object[]{srcschema, srctable});
        Statement stmtSrc = connection.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
       stmtSrc.setFetchSize(FETCHSIZE);
        stmtSrc.setFetchSize(FETCHSIZE);
        ResultSet rsSrc = stmtSrc.executeQuery(fetchSrcStmt);