From da578baa1895dd4ef168904c84c0e08275bb8c53 Mon Sep 17 00:00:00 2001 From: ?? ? <ulysseskao@ximple.com.tw> Date: Mon, 01 Sep 2008 12:26:07 +0800 Subject: [PATCH] update for EOFM-159, EOFM-160 --- xdgnjobs/ximple-elmparser/src/main/java/com/ximple/eofms/XElementParser.java | 62 +++++++++++++++++-------------- xdgnjobs/ximple-spatialjob/src/main/resources/conf/DefaultConvertShpFilter.xml | 50 +++++++++++++++++++++++++ xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexChainElement.java | 2 + xdgnjobs/ximple-elmparser/src/main/resources/log4j.properties | 3 + 4 files changed, 88 insertions(+), 29 deletions(-) diff --git a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexChainElement.java b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexChainElement.java index 5fc5209..95a0758 100644 --- a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexChainElement.java +++ b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/ComplexChainElement.java @@ -171,6 +171,8 @@ } else if (element instanceof ArcElement) { lineStrings.add((LineString) ((ArcElement) element).toGeometry(factory)); + } else { + logger.warn("Unknown sub-element in ComplexChain Element-" + element.getElementType()); } } diff --git a/xdgnjobs/ximple-elmparser/src/main/java/com/ximple/eofms/XElementParser.java b/xdgnjobs/ximple-elmparser/src/main/java/com/ximple/eofms/XElementParser.java index 85c406f..d616bd8 100644 --- a/xdgnjobs/ximple-elmparser/src/main/java/com/ximple/eofms/XElementParser.java +++ b/xdgnjobs/ximple-elmparser/src/main/java/com/ximple/eofms/XElementParser.java @@ -1,43 +1,45 @@ package com.ximple.eofms; -import java.util.HashMap; -import java.util.ArrayList; -import java.util.List; import java.io.File; -import java.io.FilenameFilter; import java.io.FileInputStream; -import java.io.IOException; import java.io.FileNotFoundException; +import java.io.FilenameFilter; +import java.io.IOException; import java.io.UnsupportedEncodingException; -import java.nio.channels.FileChannel; -import java.net.URL; import java.net.MalformedURLException; +import java.net.URL; +import java.nio.channels.FileChannel; +import java.util.HashMap; +import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import org.apache.commons.collections.map.MultiValueMap; import org.apache.commons.digester.Digester; import org.apache.commons.digester.xmlrules.DigesterLoader; -import org.apache.commons.collections.map.MultiValueMap; -import org.xml.sax.SAXException; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.geotools.feature.Feature; +import org.xml.sax.SAXException; import com.vividsolutions.jts.geom.GeometryFactory; -import com.ximple.io.dgn7.Dgn7fileReader; -import com.ximple.io.dgn7.Lock; +import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; +import com.ximple.eofms.filter.ElementDispatcher; +import com.ximple.eofms.jobs.context.postgis.FeatureDgnConvertPostGISJobContext; +import com.ximple.io.dgn7.ComplexChainElement; +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.ComplexElement; import com.ximple.io.dgn7.FrammeAttributeData; -import com.ximple.eofms.filter.ElementDispatcher; -import com.ximple.eofms.filter.AbstractFLinkageDispatchableFilter; -import com.ximple.eofms.jobs.context.postgis.FeatureDgnConvertPostGISJobContext; +import com.ximple.io.dgn7.Lock; public class XElementParser implements Runnable { static Log logger = LogFactory.getLog(XElementParser.class); static final GeometryFactory geometryFactory = new GeometryFactory(); + + static final boolean isCompactMode = true; private HashMap<String, String> dataConfig; private ElementDispatcher elementDispatcher; @@ -188,7 +190,7 @@ { FrammeAttributeData linkage = AbstractFLinkageDispatchableFilter.getFeatureLinkage(element); - if (linkage != null) + if ((isCompactMode) && (linkage != null)) { logger.warn("Unknown Element:" + element.getElementType().toString() + ":type=" + element.getType() + ":lv=" + element.getLevelIndex() + ":id=" + @@ -198,19 +200,19 @@ ComplexElement complex = (ComplexElement) element; logger.warn("----Complex Element size=" + complex.size()); } - } - /* - logger.warn("Unknown Element:" + element.getElementType().toString() + - ":type=" + element.getType() + ":lv=" + element.getLevelIndex() + ":id=" + - (linkage == null ? "NULL" : (linkage.getFsc() + "|" + linkage.getComponentID()))); + manualElementProcess(element); + } else if (!isCompactMode) { + logger.warn("Unknown Element:" + element.getElementType().toString() + + ":type=" + element.getType() + ":lv=" + element.getLevelIndex() + ":id=" + + (linkage == null ? "NULL" : (linkage.getFsc() + "|" + linkage.getComponentID()))); - if (element instanceof ComplexElement) - { - ComplexElement complex = (ComplexElement) element; - logger.warn("----Complex Element size=" + complex.size()); + if (element instanceof ComplexElement) + { + ComplexElement complex = (ComplexElement) element; + logger.warn("----Complex Element size=" + complex.size()); + } } - */ return; } @@ -218,6 +220,10 @@ featuresContext.put(feature.getFeatureType(), feature); } + private void manualElementProcess(Element element) + { + } + private void postProcessFeatureContext() { if (featuresContext.size() == 0) return; diff --git a/xdgnjobs/ximple-elmparser/src/main/resources/log4j.properties b/xdgnjobs/ximple-elmparser/src/main/resources/log4j.properties index 2340551..5597ef1 100644 --- a/xdgnjobs/ximple-elmparser/src/main/resources/log4j.properties +++ b/xdgnjobs/ximple-elmparser/src/main/resources/log4j.properties @@ -25,4 +25,5 @@ # Print messages of level INFO or above for examples log4j.logger.org.cavaness.quartzbook=INFO -log4j.logger.com.ximple.eofms=INFO \ No newline at end of file +log4j.logger.com.ximple.eofms=INFO +log4j.logger.com.ximple.io.dgn7=INFO \ No newline at end of file diff --git a/xdgnjobs/ximple-spatialjob/src/main/resources/conf/DefaultConvertShpFilter.xml b/xdgnjobs/ximple-spatialjob/src/main/resources/conf/DefaultConvertShpFilter.xml index 931cb11..1b27c51 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/resources/conf/DefaultConvertShpFilter.xml +++ b/xdgnjobs/ximple-spatialjob/src/main/resources/conf/DefaultConvertShpFilter.xml @@ -115,6 +115,51 @@ </elementCriterion> <SymbolCreateStrategy/> </TypeCompFilter> + <TypeCompFilter name="FSC-411.C-8"> + <tid>411</tid> + <cid>8</cid> + <description>�t�q��1/1200�ޤW�U�Ÿ�</description> + <elementCriterion> + <elementType>17</elementType> + </elementCriterion> + <SymbolCreateStrategy/> + </TypeCompFilter> + <TypeCompFilter name="FSC-417.C-0"> + <tid>417</tid> + <cid>0</cid> + <description>�@�c��Ƥ�</description> + <elementCriterion> + <elementType>17</elementType> + </elementCriterion> + <SymbolCreateStrategy/> + </TypeCompFilter> + <TypeCompFilter name="FSC-417.C-1"> + <tid>417</tid> + <cid>1</cid> + <description>�@�c��Ƥյ��O</description> + <elementCriterion> + <elementType>17</elementType> + </elementCriterion> + <TextCreateStrategy/> + </TypeCompFilter> + <TypeCompFilter name="FSC-419.C-0"> + <tid>419</tid> + <cid>0</cid> + <description>�s����</description> + <elementCriterion> + <elementType>17</elementType> + </elementCriterion> + <SymbolCreateStrategy/> + </TypeCompFilter> + <TypeCompFilter name="FSC-419.C-1"> + <tid>419</tid> + <cid>1</cid> + <description>�s���չϸ��y��</description> + <elementCriterion> + <elementType>17</elementType> + </elementCriterion> + <TextCreateStrategy/> + </TypeCompFilter> <TypeCompFilter name="FSC-420.C-0"> <tid>420</tid> <cid>0</cid> @@ -176,6 +221,7 @@ <cid>2</cid> <description>�����O</description> <elementCriterion> + <elementType>7</elementType> <elementType>17</elementType> </elementCriterion> <TextCreateStrategy/> @@ -729,6 +775,7 @@ <description>�����u��(�u���ϥ�)</description> <elementCriterion> <elementType>12</elementType> + <elementType>4</elementType> </elementCriterion> <LineCreateStrategy/> </TypeCompFilter> @@ -738,6 +785,7 @@ <description>�u(�u���ϥ�)</description> <elementCriterion> <elementType>12</elementType> + <elementType>4</elementType> </elementCriterion> <LineCreateStrategy/> </TypeCompFilter> @@ -757,6 +805,7 @@ <description>�X�u�N���u(�u���ϥ�)</description> <elementCriterion> <elementType>12</elementType> + <elementType>4</elementType> </elementCriterion> <LineCreateStrategy/> </TypeCompFilter> @@ -873,6 +922,7 @@ <cid>0</cid> <description>�C���ɽu</description> <elementCriterion> + <elementType>4</elementType> <elementType>12</elementType> </elementCriterion> <LineCreateStrategy/> -- Gitblit v0.0.0-SNAPSHOT