From 6de5086ab3e8e7fa852b1e5d9a31aabade25e017 Mon Sep 17 00:00:00 2001
From: ?? ? <neonhuang@hotmail.com>
Date: Thu, 27 Mar 2008 17:20:12 +0800
Subject: [PATCH] 

---
 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java |   22 +++++++++++++++++++---
 1 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java
index 7fed2a3..1aaf267 100644
--- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java
+++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java
@@ -8,6 +8,7 @@
 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;
@@ -106,10 +107,12 @@
                 , null);
 
         logger.info("begin convert job:[" + map.size() + "]:testmode=" + _testMode);
-        jobContext.startTransaction();
-        int total = map.size();
+
+        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();)
         {
@@ -134,6 +137,7 @@
                 // OracleConnection connection = jobContext.getOracleConnection();
                 // connection.commitTransaction();
                 jobContext.commitTransaction();
+                //jobContext.startTransaction();
                 System.gc();
             }
 
@@ -142,11 +146,17 @@
             {
                 current = now;
                 jobContext.getExecutionContext().put("ConvertDgn2ShpJobProgress", current);
+
             }
         }
         jobContext.getExecutionContext().put("ConvertDgn2ShpJobProgress", 100);
 
         jobContext.commitTransaction();
+        try {
+            jobContext.closeFeatureWrite();
+        } catch (IOException e) {
+            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+        }
         logger.info("end convert job:[" + order + "]");
         System.gc();
     }
@@ -240,7 +250,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);
 
@@ -268,6 +278,9 @@
                 logger.warn("Dgn7Exception", e);
             }
         }
+
+        rsSrc.close();
+        stmtSrc.close();
     }
 
     protected void queryRawElement(OracleConvertJobContext jobContext,
@@ -312,6 +325,9 @@
                 logger.warn("Dgn7Exception:" + e.getMessage(), e);
             }
         }
+
+        rsDest.close();
+        stmtDest.close();
     }
 
     private Element fetchBinaryElement(byte[] raws) throws Dgn7fileException

--
Gitblit v0.0.0-SNAPSHOT