Author: pkluegl
Date: Thu Jul 11 10:48:58 2013
New Revision: 1502183
URL: http://svn.apache.org/r1502183
Log:
UIMA-3068
- fixed circular imports
Modified:
uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
Modified:
uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
URL:
http://svn.apache.org/viewvc/uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java?rev=1502183&r1=1502182&r2=1502183&view=diff
==============================================================================
---
uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
(original)
+++
uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
Thu Jul 11 10:48:58 2013
@@ -81,7 +81,7 @@ public class RutaEngine extends JCasAnno
public static final String BASIC_TYPE =
"org.apache.uima.ruta.type.RutaBasic";
public static final String OPTIONAL_TYPE =
"org.apache.uima.ruta.type.RutaOptional";
-
+
public static final String SEEDERS = "seeders";
public static final String REMOVE_BASICS = "removeBasics";
@@ -128,8 +128,6 @@ public class RutaEngine extends JCasAnno
public static final String SIMPLE_GREEDY_FOR_COMPOSED =
"simpleGreedyForComposed";
-
-
private String[] seeders;
private Boolean createDebugInfo;
@@ -327,17 +325,21 @@ public class RutaEngine extends JCasAnno
mainRootBlock.getEnvironment().initializeTypes(cas);
Collection<RutaModule> values = script.getScripts().values();
for (RutaModule eachModule : values) {
- relinkEnvironments(eachModule, mainRootBlock);
+ relinkEnvironments(eachModule, mainRootBlock, new
ArrayList<RutaModule>());
// initializeTypes(eachModule, cas);
}
}
- private void relinkEnvironments(RutaModule script, RutaBlock mainRootBlock) {
- RutaBlock block = script.getBlock(null);
- block.setParent(mainRootBlock);
- Collection<RutaModule> innerScripts = script.getScripts().values();
- for (RutaModule module : innerScripts) {
- relinkEnvironments(module, mainRootBlock);
+ private void relinkEnvironments(RutaModule script, RutaBlock mainRootBlock,
+ Collection<RutaModule> processed) {
+ if (!processed.contains(script)) {
+ processed.add(script);
+ RutaBlock block = script.getBlock(null);
+ block.setParent(mainRootBlock);
+ Collection<RutaModule> innerScripts = script.getScripts().values();
+ for (RutaModule module : innerScripts) {
+ relinkEnvironments(module, mainRootBlock, processed);
+ }
}
}
@@ -709,7 +711,7 @@ public class RutaEngine extends JCasAnno
private String collectionToString(Object[] collection) {
return collectionToString(Arrays.asList(collection));
}
-
+
public void batchProcessComplete() throws AnalysisEngineProcessException {
super.batchProcessComplete();
Collection<AnalysisEngine> values = script.getEngines().values();
@@ -725,7 +727,5 @@ public class RutaEngine extends JCasAnno
each.collectionProcessComplete();
}
}
-
-
-
+
}