You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2016/03/13 14:04:51 UTC

svn commit: r1734803 - /uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java

Author: pkluegl
Date: Sun Mar 13 13:04:51 2016
New Revision: 1734803

URL: http://svn.apache.org/viewvc?rev=1734803&view=rev
Log:
UIMA-4850
- exception/do not check fs arrays

Modified:
    uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java

Modified: uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java?rev=1734803&r1=1734802&r2=1734803&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java (original)
+++ uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java Sun Mar 13 13:04:51 2016
@@ -1288,6 +1288,10 @@ public class LanguageCheckerVisitor exte
         for (String feat : split) {
           typeToCheck = expand(typeToCheck);
           typeToCheck = checkFSFeatureOfType(feat, typeToCheck);
+          if(StringUtils.contains(typeToCheck, UIMAConstants.TYPE_FSARRAY)) {
+            // stop here because we do not know the type
+            return UIMAConstants.TYPE_FSARRAY;
+          }
           foundAll &= (typeToCheck != null);
           if (!foundAll) {
             return null;
@@ -1312,9 +1316,18 @@ public class LanguageCheckerVisitor exte
       String name = featureDescription.getName();
       String rangeTypeName = featureDescription.getRangeTypeName();
       boolean isFS = isFeatureStructure(rangeTypeName);
-      if (name.equals(featureName) && isFS) {
-        return rangeTypeName;
-      }
+      if (name.equals(featureName)){
+        if (isFS) {
+          return rangeTypeName;
+        } else if(   StringUtils.equals(UIMAConstants.TYPE_FSARRAY, rangeTypeName)) {
+          String elementType = featureDescription.getElementType();
+          if(elementType == null) {
+            return UIMAConstants.TYPE_FSARRAY;
+          } else {
+            return elementType;
+          }
+        }
+      } 
     }
     return null;
   }