forked from geodmms/xdgnjobs

?? ?
2008-03-25 b2f56dae55d1de8f7378f22b2466e314b1e30cc7
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2ShpJob.java
@@ -64,6 +64,11 @@
        return logger;
    }
    protected OracleConvertJobContext prepareJobContext(String filterPath)
    {
        return new OracleConvertJobContext(filterPath);
    }
    public void execute(JobExecutionContext context) throws JobExecutionException
    {
        // Every job has its own job detail
@@ -76,7 +81,7 @@
        logger.info(jobName + " fired at " + new Date());
        extractJobConfiguration(jobDetail);
        OracleConvertJobContext jobContext = prepareJobContext();
        OracleConvertJobContext jobContext = prepareJobContext(_filterPath);
        jobContext.setConnectionInfo(_oracleHost, _oraclePort, _oracleInstance);
        jobContext.setLogin(_username, _password);
        jobContext.setShapeData(_dataPath);
@@ -100,6 +105,7 @@
                , null);
        logger.info("begin convert job:[" + map.size() + "]:testmode=" + _testMode);
        jobContext.startTransaction();
        for (OrderedMapIterator it = map.orderedMapIterator(); it.hasNext();)
        {
            it.next();
@@ -132,8 +138,8 @@
        System.gc();
    }
    private OrderedMap getBlobStorageList(OracleConnection connection, String schemaSrc, String tableSrc,
                                          OrderedMap orderedMap) throws SQLException
    protected OrderedMap getBlobStorageList(OracleConnection connection, String schemaSrc, String tableSrc,
                                            OrderedMap orderedMap) throws SQLException
    {
        if (orderedMap == null)
            orderedMap = new LinkedMap(99);
@@ -156,7 +162,7 @@
                values[i] = rs.getObject(i + 1);
            }
            Integer key = new Integer(((BigDecimal) values[0]).intValue());
            Integer key = ((BigDecimal) values[0]).intValue();
            String name = (String) values[1];
            Pair pair = (Pair) orderedMap.get(key);
@@ -172,8 +178,8 @@
        return orderedMap;
    }
    private OrderedMap getRawFormatStorageList(OracleConnection connection, String schemaSrc, String tableSrc,
                                               OrderedMap orderedMap) throws SQLException
    protected OrderedMap getRawFormatStorageList(OracleConnection connection, String schemaSrc, String tableSrc,
                                                 OrderedMap orderedMap) throws SQLException
    {
        if (orderedMap == null)
            orderedMap = new LinkedMap(99);
@@ -196,7 +202,7 @@
                values[i] = rs.getObject(i + 1);
            }
            Integer key = new Integer(((BigDecimal) values[0]).intValue());
            Integer key = ((BigDecimal) values[0]).intValue();
            String name = (String) values[1];
            Pair pair = (Pair) orderedMap.get(key);
@@ -212,8 +218,8 @@
        return orderedMap;
    }
    private void queryIgsetElement(OracleConvertJobContext jobContext,
                                   String srcschema, String srctable) throws SQLException
    protected void queryIgsetElement(OracleConvertJobContext jobContext,
                                     String srcschema, String srctable) throws SQLException
    {
        OracleConnection connection = jobContext.getOracleConnection();
        String fetchSrcStmtFmt = "SELECT IGDSELM FROM \"%s\".\"%s\" ORDER BY ROWID";
@@ -244,7 +250,6 @@
            {
                Element element = fetchBinaryElement(raw);
                jobContext.putFeatureCollection(element);
            } catch (Dgn7fileException e)
            {
                logger.warn("Dgn7Exception", e);
@@ -252,8 +257,8 @@
        }
    }
    private void queryRawElement(OracleConvertJobContext jobContext,
                                 String srcschema, String srctable) throws SQLException
    protected void queryRawElement(OracleConvertJobContext jobContext,
                                   String srcschema, String srctable) throws SQLException
    {
        OracleConnection connection = jobContext.getOracleConnection();
        String fetchDestStmtFmt = "SELECT ELEMENT FROM \"%s\".\"%s\" ORDER BY ROWID";
@@ -288,7 +293,7 @@
            try
            {
                Element element = fetchBinaryElement(rawDest);
                // Feature feature = convertElementToFeature(element);
                jobContext.putFeatureCollection(element);
            } catch (Dgn7fileException e)
            {
                logger.warn("Dgn7Exception:" + e.getMessage(), e);
@@ -310,7 +315,7 @@
        // track the record location
        int elementLength = (buffer.getShort() * 2) + 4;
        ElementType recordType = ElementType.forID(type);
        IElementHandler handler = null;
        IElementHandler handler;
        handler = recordType.getElementHandler();
@@ -355,23 +360,4 @@
        return dgnElement;
    }
    private boolean equalRawData(byte[] rawSrc, byte[] rawDest)
    {
        if (rawSrc.length != rawDest.length)
        {
            return false;
        }
        for (int i = 0; i < rawSrc.length; i++)
        {
            if (rawSrc[i] != rawDest[i])
            {
                return false;
            }
        }
        return true;
    }
}