From 8228a9616175b94ff0df5a9832184e5459c07c1a Mon Sep 17 00:00:00 2001
From: Dennis Kao <ulysseskao@gmail.com>
Date: Fri, 07 Mar 2014 02:10:56 +0800
Subject: [PATCH] update for increment and theme jobs

---
 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java |   36 ++++++++++++++++++++++++++++++++++++
 1 files changed, 36 insertions(+), 0 deletions(-)

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 9bbfe1c..974237e 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
@@ -317,6 +317,7 @@
                     }
                 }
 
+                clearExchangeData(jobContext);
                 jobContext.closeOracleConnection();
             }
 
@@ -388,6 +389,41 @@
             (((int) ((tCurrent - tBefore) % 60000.0)) / 1000) + " sec");
     }
 
+    private void clearExchangeData(OracleConvertPostGISJobContext jobContext) throws SQLException, IOException {
+        Connection connection = jobContext.getOracleConnection();
+
+        ResultSet rsMeta = connection.getMetaData().getTables(null, "CMMS_POSTDB", "GEO_EXCHANGE",
+            new String[]{"TABLE"});
+
+        boolean found = false;
+        try {
+            while (rsMeta.next()) {
+                found = true;
+                break;
+            }
+            // } catch (SQLException e)
+        } finally {
+            if (rsMeta != null) {
+                rsMeta.close();
+                rsMeta = null;
+            }
+        }
+
+        if (!found) {
+            logger.info("Cannot Found GEO_EXCHANGE in CMMS_POSTDB.");
+            return;
+        }
+
+        Statement stmt = null;
+        try {
+            stmt = connection.createStatement();
+            int count = stmt.executeUpdate("UPDATE \"CMMS_POSTDB\".\"GEO_EXCHANGE\" SET ISEXCHANGE=1 WHERE ISEXCHANGE=0");
+            logger.info("GEO_EXCHANGE UPDATE SIZE=" + count);
+        } finally {
+            JDBCUtils.close(stmt);
+        }
+    }
+
     private void exetcuteConvert(OracleConvertPostGISJobContext jobContext,
                                  String querySchema, String targetSchemaName) throws SQLException {
         int order = 0;

--
Gitblit v0.0.0-SNAPSHOT