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/16 17:59:55 UTC

svn commit: r1735266 - /uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java

Author: pkluegl
Date: Wed Mar 16 16:59:55 2016
New Revision: 1735266

URL: http://svn.apache.org/viewvc?rev=1735266&view=rev
Log:
UIMA-4783
- remember that aes have been initialized 

Modified:
    uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java

Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java?rev=1735266&r1=1735265&r2=1735266&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java Wed Mar 16 16:59:55 2016
@@ -430,12 +430,15 @@ public class RutaEngine extends JCasAnno
 
   private boolean initialized = false;
 
+  private boolean analysisEnginesAlreadyInitialized = false;
+
   private List<Type> seedTypes;
 
   private TypeSystem lastTypeSystem;
 
   private ResourceManager resourceManager = null;
 
+
   @Override
   public void initialize(UimaContext aContext) throws ResourceInitializationException {
     super.initialize(aContext);
@@ -507,6 +510,9 @@ public class RutaEngine extends JCasAnno
       engineLoader = new RutaEngineLoader();
       verbalizer = new RutaVerbalizer();
 
+      // reinitialize analysis engines if this one is configured
+      analysisEnginesAlreadyInitialized = false;
+      
       resourceManager = UIMAFramework.newDefaultResourceManager();
       String dataPath = "";
       if (descriptorPaths != null) {
@@ -768,7 +774,7 @@ public class RutaEngine extends JCasAnno
     Map<String, RutaModule> additionalScriptsMap = new HashMap<String, RutaModule>();
     Map<String, AnalysisEngine> additionalEnginesMap = new HashMap<String, AnalysisEngine>();
 
-    if (additionalUimafitEngines != null) {
+    if (additionalUimafitEngines != null && !analysisEnginesAlreadyInitialized) {
       for (String eachUimafitEngine : additionalUimafitEngines) {
         AnalysisEngine eachEngine = null;
         String classString = eachUimafitEngine;
@@ -801,7 +807,7 @@ public class RutaEngine extends JCasAnno
         }
       }
     }
-    if (additionalEngines != null) {
+    if (additionalEngines != null && !analysisEnginesAlreadyInitialized) {
       for (String eachEngineLocation : additionalEngines) {
         AnalysisEngine eachEngine;
         String location = locate(eachEngineLocation, descriptorPaths, ".xml");
@@ -858,6 +864,8 @@ public class RutaEngine extends JCasAnno
       }
     }
 
+    analysisEnginesAlreadyInitialized = true;
+    
     for (RutaModule each : additionalScriptsMap.values()) {
       each.setScriptDependencies(additionalScriptsMap);
     }