forked from geodmms/xdgnjobs

?? ?
2008-03-20 0e92e82a6a426330609d6002b9b40649643fafe3
update for EOFM-17
6 files modified
134 ■■■■■ changed files
ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineStringStrategy.java 4 ●●●● patch | view | raw | blame | history
ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java 4 ●●●● patch | view | raw | blame | history
ximple-spatialjob/src/main/resources/com/ximple/eofms/filter/ElementDispatcherRules.xml 59 ●●●●● patch | view | raw | blame | history
ximple-spatialjob/src/test/java/com/ximple/eofms/filter/ElementDispatcherTest.java 27 ●●●●● patch | view | raw | blame | history
ximple-spatialjob/src/test/resources/com/ximple/eofms/filter/test-data/testElementFilter.xml 9 ●●●●● patch | view | raw | blame | history
ximple-spatialjob/src/test/resources/com/ximple/eofms/filter/test-data/testRules.xml 31 ●●●●● patch | view | raw | blame | history
ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineStringStrategy.java
@@ -22,6 +22,10 @@
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    public CreateLineStringStrategy()
    {
    }
    protected FrammeAttributeData getFeatureLinkage(Element element)
    {
        if (!element.hasUserAttributeData())
ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java
@@ -22,6 +22,10 @@
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    public CreateTextStrategy()
    {
    }
    protected FrammeAttributeData getFeatureLinkage(Element element)
    {
        if (!element.hasUserAttributeData())
ximple-spatialjob/src/main/resources/com/ximple/eofms/filter/ElementDispatcherRules.xml
@@ -1,16 +1,65 @@
<?xml version='1.0' encoding="big5"?>
<!DOCTYPE digester-rules PUBLIC "-//Jakarta Apache //DTD digester-rules XML V1.0//EN" "digester-rules.dtd">
<digester-rules>
  <pattern value="ElementDispatcherRules">
    <object-create-rule classname="com.ximple.eofms.filter.ElementDispatcher"/>
    <set-properties-rule/>
    <pattern value="TypeFilter">
      <object-create-rule classname="ElementDispatchableStrategy"/>
      <set-next-rule methodname="addChart" paramtype="study.jakarta.commons.digester.ChartConfig"/>
      <object-create-rule classname="com.ximple.eofms.filter.TypeIdDispatchableFilter"/>
      <set-next-rule methodname="addRule" paramtype="com.ximple.eofms.filter.ElementDispatchableFilter"/>
      <set-properties-rule/>
      <bean-property-setter-rule pattern="legendVisible"/>
      <bean-property-setter-rule pattern="type"/>
      <bean-property-setter-rule pattern="width"/>
      <bean-property-setter-rule pattern="name"/>
      <bean-property-setter-rule pattern="description"/>
      <bean-property-setter-rule pattern="tid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
    <pattern value="TypeCompFilter">
      <object-create-rule classname="com.ximple.eofms.filter.TypeCompIdDispatchableFilter"/>
      <set-next-rule methodname="addRule" paramtype="com.ximple.eofms.filter.ElementDispatchableFilter"/>
      <set-properties-rule/>
      <bean-property-setter-rule pattern="name"/>
      <bean-property-setter-rule pattern="description"/>
      <bean-property-setter-rule pattern="tid"/>
      <bean-property-setter-rule pattern="cid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
    <pattern value="TypeCompLevelFilter">
      <object-create-rule classname="com.ximple.eofms.filter.TypeCompLevelIdDispatchableFilter"/>
      <set-next-rule methodname="addRule" paramtype="com.ximple.eofms.filter.ElementDispatchableFilter"/>
      <set-properties-rule/>
      <bean-property-setter-rule pattern="name"/>
      <bean-property-setter-rule pattern="description"/>
      <bean-property-setter-rule pattern="tid"/>
      <bean-property-setter-rule pattern="cid"/>
      <bean-property-setter-rule pattern="lid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
  </pattern>
</digester-rules>
ximple-spatialjob/src/test/java/com/ximple/eofms/filter/ElementDispatcherTest.java
@@ -34,6 +34,31 @@
        ElementDispatcher ed = (ElementDispatcher) digester.parse(config);
        Assert.assertNotNull(ed);
        Assert.assertEquals(ed.getRules().size(), 3);
        // ed.getRules().get(0);
        ElementDispatchableFilter filter = ed.getRules().get(0);
        Assert.assertTrue(filter instanceof TypeIdDispatchableFilter);
        TypeIdDispatchableFilter tFilter = (TypeIdDispatchableFilter) filter;
        Assert.assertEquals(tFilter.getName(), "DemoFeature1");
        Assert.assertEquals(tFilter.getTid(), 106);
        Assert.assertNotNull(tFilter.getCreateStrategy());
        Assert.assertTrue(tFilter.getCreateStrategy() instanceof CreateLineStringStrategy);
        filter = ed.getRules().get(1);
        Assert.assertTrue(filter instanceof TypeCompIdDispatchableFilter);
        TypeCompIdDispatchableFilter tcFilter = (TypeCompIdDispatchableFilter) filter;
        Assert.assertEquals(tcFilter.getName(), "DemoFeature2");
        Assert.assertEquals(tcFilter.getTid(), 107);
        Assert.assertEquals(tcFilter.getCid(), 1);
        Assert.assertNotNull(tcFilter.getCreateStrategy());
        Assert.assertTrue(tcFilter.getCreateStrategy() instanceof CreateTextStrategy);
        filter = ed.getRules().get(2);
        Assert.assertTrue(filter instanceof TypeCompLevelIdDispatchableFilter);
        TypeCompLevelIdDispatchableFilter tclFilter = (TypeCompLevelIdDispatchableFilter) filter;
        Assert.assertEquals(tclFilter.getName(), "DemoFeature3");
        Assert.assertEquals(tclFilter.getTid(), 108);
        Assert.assertEquals(tclFilter.getCid(), 2);
        Assert.assertEquals(tclFilter.getLid(), 34);
        Assert.assertNull(tclFilter.getCreateStrategy());
    }
}
ximple-spatialjob/src/test/resources/com/ximple/eofms/filter/test-data/testElementFilter.xml
@@ -3,16 +3,19 @@
  <TypeFilter name="DemoFeature1">
    <tid>106</tid>
    <description>DemoFilter for DemoFeature</description>
    <LineCreateStrategy/>
  </TypeFilter>
  <TypeCompFilter name="DemoFeature2">
    <tid>107</tid>
    <cid>0</cid>
    <cid>1</cid>
    <description>DemoFilter for DemoFeature</description>
    <TextCreateStrategy/>
  </TypeCompFilter>
  <TypeCompLevelFilter name="DemoFeature3">
    <tid>106</tid>
    <cid>1</cid>
    <tid>108</tid>
    <cid>2</cid>
    <lid>34</lid>
    <description>DemoFilter for DemoFeature</description>
    <TextCreateStrategy-None/>
  </TypeCompLevelFilter>
</ElementDispatcherRules>
ximple-spatialjob/src/test/resources/com/ximple/eofms/filter/test-data/testRules.xml
@@ -1,4 +1,5 @@
<?xml version='1.0' encoding="big5"?>
<!DOCTYPE digester-rules PUBLIC "-//Jakarta Apache //DTD digester-rules XML V1.0//EN" "digester-rules.dtd">
<digester-rules>
  <pattern value="ElementDispatcherRules">
    <object-create-rule classname="com.ximple.eofms.filter.ElementDispatcher"/>
@@ -10,6 +11,16 @@
      <bean-property-setter-rule pattern="name"/>
      <bean-property-setter-rule pattern="description"/>
      <bean-property-setter-rule pattern="tid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
    <pattern value="TypeCompFilter">
      <object-create-rule classname="com.ximple.eofms.filter.TypeCompIdDispatchableFilter"/>
@@ -19,6 +30,16 @@
      <bean-property-setter-rule pattern="description"/>
      <bean-property-setter-rule pattern="tid"/>
      <bean-property-setter-rule pattern="cid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
    <pattern value="TypeCompLevelFilter">
      <object-create-rule classname="com.ximple.eofms.filter.TypeCompLevelIdDispatchableFilter"/>
@@ -29,6 +50,16 @@
      <bean-property-setter-rule pattern="tid"/>
      <bean-property-setter-rule pattern="cid"/>
      <bean-property-setter-rule pattern="lid"/>
        <pattern value="LineCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateLineStringStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
        <pattern value="TextCreateStrategy">
            <object-create-rule classname="com.ximple.eofms.filter.CreateTextStrategy"/>
            <set-next-rule methodname="setCreateStrategy" paramtype="com.ximple.eofms.filter.CreateFeatureTypeStrategy"/>
            <set-properties-rule/>
        </pattern>
    </pattern>
  </pattern>
</digester-rules>