You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Marshall Schor (JIRA)" <de...@uima.apache.org> on 2017/01/16 15:44:26 UTC

[jira] [Created] (UIMA-5256) Ruta/uv3 accomodation, ruta-core

Marshall Schor created UIMA-5256:
------------------------------------

             Summary: Ruta/uv3 accomodation, ruta-core
                 Key: UIMA-5256
                 URL: https://issues.apache.org/jira/browse/UIMA-5256
             Project: UIMA
          Issue Type: Improvement
          Components: Ruta
    Affects Versions: 2.5.0ruta
            Reporter: Marshall Schor
            Assignee: Peter Klügl
            Priority: Minor


These are the minor changes I made to ruta-core to accomodate UIMA v3; I believe they are compatible with V2.

in Ruta.java

- the 2nd "inject" method, change the 2nd arg from Annotation ... to FeatureStructureImpl ...
- remove the 3rd "inject" method - now covered by 2nd.

- change getAddresses arg list to have type FeatureStructureImpl[]

- remove the 2nd getAddresses method (now covered by previous one).

These (above) changes accomodate the fact that there's just one impl of Annotation in v3, and AnnotationImpl is now an interface.
============
In RutaEngine, the process method sets a variable:
boolean typeSystemChanged = lastTypeSystem != cas.getTypeSystem();
 
In UIMA V3, loading a new type system which is identical to a previously committed type system, results in the cas.getTypeSystem being == to the "lastTypeSystem".  So as a result, you can't use this to determine if a new type system was loaded.  The line 484 fails for one test because of this.  The workaround is to set "typeSystemChanged" to true, always.  But you might have a better solution.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)