Author: pkluegl Date: Fri Nov 30 09:12:38 2018 New Revision: 1847791 URL: http://svn.apache.org/viewvc?rev=1847791&view=rev Log: UIMA-5752 - applied patch
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java?rev=1847791&r1=1847790&r2=1847791&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java (original) +++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java Fri Nov 30 09:12:38 2018 @@ -33,6 +33,7 @@ import org.apache.uima.cas.text.Annotati import org.apache.uima.jcas.cas.TOP; import org.apache.uima.jcas.tcas.Annotation; import org.apache.uima.ruta.RutaStream; +import org.apache.uima.ruta.engine.RutaEngine; import org.apache.uima.ruta.expression.bool.IBooleanExpression; import org.apache.uima.ruta.expression.bool.SimpleBooleanExpression; import org.apache.uima.ruta.expression.number.INumberExpression; @@ -64,7 +65,7 @@ public class MarkTableAction extends Abs private final INumberExpression maxIgnoreChar; - private IBooleanExpression ignoreWS = new SimpleBooleanExpression(true); + private IBooleanExpression ignoreWS; public MarkTableAction(ITypeExpression typeExpr, INumberExpression indexExpr, WordTableExpression tableExpr, Map<IStringExpression, INumberExpression> featureMap, @@ -109,7 +110,7 @@ public class MarkTableAction extends Abs String ignoreCharValue = ignoreChar != null ? ignoreChar.getStringValue(context, stream) : ""; int maxIgnoreCharValue = maxIgnoreChar != null ? maxIgnoreChar.getIntegerValue(context, stream) : 0; - boolean ignoreWSValue = ignoreWS != null ? ignoreWS.getBooleanValue(context, stream) : false; + boolean ignoreWSValue = ignoreWS != null ? ignoreWS.getBooleanValue(context, stream) : getDictWSParamValue(context); RutaWordList wordList = table.getWordList(index, element.getParent()); Collection<AnnotationFS> found = wordList.find(stream, ignoreCaseValue, ignoreLengthValue, @@ -143,6 +144,10 @@ public class MarkTableAction extends Abs } } + private boolean getDictWSParamValue(MatchContext context) { + return (Boolean) context.getParent().getContext().getConfigParameterValue(RutaEngine.PARAM_DICT_REMOVE_WS); + } + private void fillFeatures(TOP structure, Map<String, Integer> map, AnnotationFS annotationFS, RuleElement element, List<String> row, RutaStream stream) { List<?> featuresList = structure.getType().getFeatures(); Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java?rev=1847791&r1=1847790&r2=1847791&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java (original) +++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java Fri Nov 30 09:12:38 2018 @@ -181,6 +181,8 @@ public class RutaTestUtils { name = name.substring(0, name.length() - 5); } + ae.setConfigParameterValue(RutaEngine.PARAM_DICT_REMOVE_WS, false); + for (Map.Entry<String, Object> parameter : parameters.entrySet()) { ae.setConfigParameterValue(parameter.getKey(), parameter.getValue()); } Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java?rev=1847791&r1=1847790&r2=1847791&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java (original) +++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java Fri Nov 30 09:12:38 2018 @@ -21,10 +21,7 @@ package org.apache.uima.ruta; import static org.junit.Assert.assertEquals; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.TreeMap; +import java.util.*; import org.apache.uima.cas.CAS; import org.apache.uima.cas.FSIterator; @@ -33,6 +30,7 @@ import org.apache.uima.cas.Type; import org.apache.uima.cas.text.AnnotationFS; import org.apache.uima.cas.text.AnnotationIndex; import org.apache.uima.ruta.engine.Ruta; +import org.apache.uima.ruta.engine.RutaEngine; import org.apache.uima.ruta.engine.RutaTestUtils; import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature; import org.junit.Test; @@ -60,14 +58,8 @@ public class LoadResourceFromClassPathTe list.add(new TestFeature(fn1, "", "uima.cas.String")); String fn2 = "system"; list.add(new TestFeature(fn2, "", "uima.cas.String")); - - CAS cas = null; - try { - cas = RutaTestUtils.getCAS(document, complexTypes, features); - Ruta.apply(cas, script); - } catch (Exception e) { - e.printStackTrace(); - } + + CAS cas = executeAnalysis(document, script, complexTypes, features); RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "Peter", "Marshall", "Joern"); RutaTestUtils.assertAnnotationsEquals(cas, 2, 3, "Kluegl", "Schor", "Kottmann"); @@ -130,13 +122,7 @@ public class LoadResourceFromClassPathTe String fn2 = "system"; list.add(new TestFeature(fn2, "", "uima.cas.String")); - CAS cas = null; - try { - cas = RutaTestUtils.getCAS(document, complexTypes, features); - Ruta.apply(cas, script); - } catch (Exception e) { - e.printStackTrace(); - } + CAS cas = executeAnalysis(document, script, complexTypes, features); RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "Peter", "Marshall", "Joern"); RutaTestUtils.assertAnnotationsEquals(cas, 2, 3, "Kluegl", "Schor", "Kottmann"); @@ -176,4 +162,18 @@ public class LoadResourceFromClassPathTe cas.release(); } + + private CAS executeAnalysis(String document, String script, Map<String, String> complexTypes, Map<String, List<TestFeature>> features) { + CAS cas = null; + try { + Map<String, Object> map = new HashMap<>(); + map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true); + + cas = RutaTestUtils.getCAS(document, complexTypes, features); + Ruta.apply(cas, script, map); + } catch (Exception e) { + e.printStackTrace(); + } + return cas; + } } Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java?rev=1847791&r1=1847790&r2=1847791&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java (original) +++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java Fri Nov 30 09:12:38 2018 @@ -70,7 +70,8 @@ public class WSDictionaryTest { document += "Peter<x>Kluegl, Marshall<x>Schor, Joern<x>Kottmann\n"; String script = "WORDLIST list = 'org/apache/uima/ruta/WSDictionaryTestList.txt';"; script += "MARKFAST(T1, list, true, 0, false);"; - Map<String, Object> map = new HashMap<String, Object>(); + + Map<String, Object> map = new HashMap<>(); map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true); CAS cas = RutaTestUtils.getCAS(document); Ruta.apply(cas, script, map); @@ -104,7 +105,9 @@ public class WSDictionaryTest { CAS cas = null; try { cas = RutaTestUtils.getCAS(document, complexTypes, features); - Ruta.apply(cas, script); + Map<String, Object> map = new HashMap<>(); + map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true); + Ruta.apply(cas, script, map); } catch (Exception e) { e.printStackTrace(); } Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java?rev=1847791&r1=1847790&r2=1847791&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java (original) +++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java Fri Nov 30 09:12:38 2018 @@ -21,10 +21,7 @@ package org.apache.uima.ruta.expression. import static org.junit.Assert.assertEquals; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.TreeMap; +import java.util.*; import org.apache.uima.cas.CAS; import org.apache.uima.cas.FSIterator; @@ -33,6 +30,7 @@ import org.apache.uima.cas.Type; import org.apache.uima.cas.text.AnnotationFS; import org.apache.uima.cas.text.AnnotationIndex; import org.apache.uima.ruta.engine.Ruta; +import org.apache.uima.ruta.engine.RutaEngine; import org.apache.uima.ruta.engine.RutaTestUtils; import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature; import org.junit.Test; @@ -59,9 +57,12 @@ public class WordTableStringExpressionTe list.add(new TestFeature(fn1, "", "uima.cas.String")); String fn2 = "system"; list.add(new TestFeature(fn2, "", "uima.cas.String")); - + + Map<String, Object> map = new HashMap(); + map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true); + CAS cas = RutaTestUtils.getCAS(document, complexTypes, features); - Ruta.apply(cas, script); + Ruta.apply(cas, script, map); Type t = null; AnnotationIndex<AnnotationFS> ai = null; @@ -120,9 +121,12 @@ public class WordTableStringExpressionTe list.add(new TestFeature(fn1, "", "uima.cas.String")); String fn2 = "system"; list.add(new TestFeature(fn2, "", "uima.cas.String")); - + + Map<String, Object> map = new HashMap<>(); + map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true); + CAS cas = RutaTestUtils.getCAS(document, complexTypes, features); - Ruta.apply(cas, script); + Ruta.apply(cas, script, map); Type t = null; AnnotationIndex<AnnotationFS> ai = null;