svn commit: r1176158 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Tue Sep 27 01:50:21 2011
New Revision: 1176158

URL: http://svn.apache.org/viewvc?rev=1176158&view=rev
Log:
UIMA-2163 added two overloaded createDeploymentDescriptor methods to parse DD 
from File and from InputStream 

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java?rev=1176158&r1=1176157&r2=1176158&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/resourceSpecifier/factory/DeploymentDescriptorFactory.java
 Tue Sep 27 01:50:21 2011
@@ -18,6 +18,9 @@
  */
 package org.apache.uima.resourceSpecifier.factory;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
 import java.util.List;
 
 import org.apache.uima.resource.ResourceInitializationException;
@@ -49,10 +52,10 @@ public final class DeploymentDescriptorF
   }
 
   /**
-   * Parses provided UIMA AS deployment descriptor xml file and returns a Java 
Object representing
+   * Parses provided UIMA AS deployment descriptor contents (as String) and 
returns a Java Object representing
* the descriptor.
*
-   * @param xmlDescriptor - deployment descriptor path
+   * @param xmlDescriptor - deployment descriptor xml contents as String
* @return - Java Object representing deployment descriptor
* @throws ResourceInitializationException the resource initialization 
exception
*/
@@ -64,8 +67,41 @@ public final class DeploymentDescriptorF
   throw new ResourceInitializationException(e);
 }
   }
+  /**
+   * Parses provided UIMA AS deployment descriptor xml file and returns a Java 
Object representing
+   * the descriptor.
+   *
+   * @param xmlFileDescriptor - deployment descriptor file
+   * @return - Java Object representing deployment descriptor
+   * @throws ResourceInitializationException the resource initialization 
exception
+   */
+  public static UimaASDeploymentDescriptor createDeploymentDescriptor(File 
xmlFileDescriptor) 
+  throws ResourceInitializationException {
+try {
+  return new 
UimaASDeploymentDescriptorImpl(AnalysisEngineDeploymentDescriptionDocument.Factory.parse(xmlFileDescriptor),new
 ServiceContextImpl("","","","") );
+} catch( Exception e ) {
+  throw new ResourceInitializationException(e);
+}
+  }
   
   /**
+   * Parses provided UIMA AS deployment descriptor InputStream and returns a 
Java Object representing
+   * the descriptor.
+   *
+   * @param xmlFileDescriptor - deployment descriptor InputStream
+   * @return - Java Object representing deployment descriptor
+   * @throws ResourceInitializationException the resource initialization 
exception
+   */
+  public static UimaASDeploymentDescriptor 
createDeploymentDescriptor(InputStream descriptorInputStream) 
+  throws ResourceInitializationException {
+try {
+  return new 
UimaASDeploymentDescriptorImpl(AnalysisEngineDeploymentDescriptionDocument.Factory.parse(descriptorInputStream),new
 ServiceContextImpl("","","","") );
+} catch( Exception e ) {
+  throw new ResourceInitializationException(e);
+}
+  }
+
+  /**
* Creates a new DeploymentDescriptor object.
*
* @param context the context
@@ -322,7 +358,26 @@ public static RemoteDelegateConfiguratio
*/
   public static void main(String[] args) {
   
-
+ try {
+ File file = new File(args[0]);
+ UimaASDeploymentDescriptor primitiveDD =
+ 
DeploymentDescriptorFactory.createDeploymentDescriptor(new 
FileInputStream(file));  
+ System.out.println(primitiveDD.toXML());
+ 
+ } catch( Exception e) {
+ e.printStackTrace();
+ }
+
+ try {
+ File file = new File(args[0]);
+ UimaASDeploymentDescriptor primitiveDD =
+ 
DeploymentDescriptorFactory.createDeploymentDescriptor(file);  
+ System.out.println(primitiveDD.toXML());
+ 
+ } catch( Exception e) {
+ e.printStackTrace();
+ } 
+ 
 ServiceContext context =
   new ServiceContextImpl("Person Title", "Person Title Annotator", 
"../descriptors/analysis_engine/PersonTitleAnnotator.xml","PersonTitleQueue");
 try {




svn commit: r1175971 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Mon Sep 26 17:40:03 2011
New Revision: 1175971

URL: http://svn.apache.org/viewvc?rev=1175971&view=rev
Log:
UIMA-2239 added logging in handleServiceInfoReply

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java?rev=1175971&r1=1175970&r2=1175971&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/handler/input/ProcessResponseHandler.java
 Mon Sep 26 17:40:03 2011
@@ -623,6 +623,9 @@ public class ProcessResponseHandler exte
 casStateEntry.setHostIpProcessingCAS(serviceHostIp);
   }
 } catch (Exception e) {
+   UIMAFramework.getLogger(CLASS_NAME).logrb(Level.WARNING, 
getClass().getName(),
+"handleServiceInfoReply", 
UIMAEE_Constants.JMS_LOG_RESOURCE_BUNDLE,
+"UIMAEE_exception__WARNING", e);
return;
 }
 




svn commit: r1175970 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Mon Sep 26 17:38:54 2011
New Revision: 1175970

URL: http://svn.apache.org/viewvc?rev=1175970&view=rev
Log:
UIMA-2239 synchronized cancelTimerForCasOrPurge()

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java?rev=1175970&r1=1175969&r2=1175970&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/delegate/Delegate.java
 Mon Sep 26 17:38:54 2011
@@ -136,7 +136,7 @@ public abstract class Delegate {
 return endpoint;
   }
 
-  public void cancelTimerForCasOrPurge(String casReferenceId) {
+  public synchronized void cancelTimerForCasOrPurge(String casReferenceId) {
  if ( timer != null && timer.getTimerCasId() != null && 
timer.getTimerCasId().equals(casReferenceId)) {
  //System.out.println("\n\n\t Canceled Timer For 
CAS:"+casReferenceId+" and Restarting Timer for the next oldest CAS in the 
outstanding list\n\n");
  cancelDelegateTimer();
@@ -806,7 +806,7 @@ public abstract class Delegate {
 }
 return sb.toString();
   }
-  private class DelegateTimer extends Timer {
+  private static class DelegateTimer extends Timer {
  String casReferenceId;
  Delegate delegate;
  public DelegateTimer(String threadName, boolean isDaemon, String 
casReferenceId, Delegate delegate) {




svn commit: r1175969 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Mon Sep 26 17:38:02 2011
New Revision: 1175969

URL: http://svn.apache.org/viewvc?rev=1175969&view=rev
Log:
UIMA-2239 added special purpose monitor(lock) in 
incrementOutstandingFlowCounter and decrementOutstandingFlowCounter

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java?rev=1175969&r1=1175968&r2=1175969&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/LocalCache.java
 Mon Sep 26 17:38:02 2011
@@ -236,7 +236,7 @@ public class LocalCache extends Concurre
 private List performanceList = 
   new ArrayList();
 
-
+private Object monitor = new Object();
 
 public String getHostIpProcessingCAS() {
   return hostIpProcessingCAS;
@@ -422,7 +422,7 @@ public class LocalCache extends Concurre
  * 
  */
 public void incrementOutstandingFlowCounter() {
-  synchronized( flowSemaphore ) {
+  synchronized( monitor ) {
 if ( childCasOutstandingFlowCounter.incrementAndGet() == 1  ) {
   try {
 acquireFlowSemaphore();
@@ -438,7 +438,7 @@ public class LocalCache extends Concurre
  * with its Flow. 
  */
 public void decrementOutstandingFlowCounter() {
-  synchronized( flowSemaphore ) {
+  synchronized( monitor ) {
 if( flowSemaphore.availablePermits() == 0 ) {
   if ( childCasOutstandingFlowCounter.get() > 0 ) {
 childCasOutstandingFlowCounter.decrementAndGet();




svn commit: r1175967 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Mon Sep 26 17:35:05 2011
New Revision: 1175967

URL: http://svn.apache.org/viewvc?rev=1175967&view=rev
Log:
UIMA-2239 removed synchronization on destinationMap. It is of type 
ConcurrentHashMap and doesnt need to be locked when iterating

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java?rev=1175967&r1=1175966&r2=1175967&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/AggregateAnalysisEngineController_impl.java
 Mon Sep 26 17:35:05 2011
@@ -3110,10 +3110,9 @@ public class AggregateAnalysisEngineCont
 if ( buffer.length() == 0) {
   delegates.append("\n"+lbl1+getComponentName()+" Delegates:");
 }
-synchronized(destinationMap) {
-  Set set = destinationMap.entrySet();
-  // For all delegates ...
-  for (Iterator it = set.iterator(); it.hasNext();) {
+Set set = destinationMap.entrySet();
+// For all delegates ...
+for (Iterator it = set.iterator(); it.hasNext();) {
 delegates.append("\n");
 Map.Entry entry = (Map.Entry) it.next();
 Endpoint endpoint = (Endpoint) entry.getValue();
@@ -3141,8 +3140,6 @@ public class AggregateAnalysisEngineCont
 }
   }
 }
-  }
-  
 }
 buffer.append(delegates.toString());
   }




svn commit: r1175965 - /uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java

2011-09-26 Thread cwiklik
Author: cwiklik
Date: Mon Sep 26 17:33:09 2011
New Revision: 1175965

URL: http://svn.apache.org/viewvc?rev=1175965&view=rev
Log:
UIMA-2239 make CAS instance transient

Modified:

uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java

Modified: 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java?rev=1175965&r1=1175964&r2=1175965&view=diff
==
--- 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java
 (original)
+++ 
uima/uima-as/trunk/uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatusImpl.java
 Mon Sep 26 17:33:09 2011
@@ -51,7 +51,7 @@ public class UimaASProcessStatusImpl imp
 
   private String parentCasId;
 
-  private CAS cas;
+  transient private CAS cas;
   
   public UimaASProcessStatusImpl(ProcessTrace p) {
 this(p, null, null);




svn commit: r1175828 - in /uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide: ./ src/main/java/org/apache/uima/textmarker/ide/core/parser/ src/main/java/org/apache/uima/textmarker/ide/formatter/ s

2011-09-26 Thread joern
Author: joern
Date: Mon Sep 26 12:32:07 2011
New Revision: 1175828

URL: http://svn.apache.org/viewvc?rev=1175828&view=rev
Log:
UIMA-2235 Applied patch from Peter Klügl. All observed bugs are fixed. 
Validator was not activated due to missing extension. Formatter does not delete 
new language elements anymore. Visitor correctly traverses composed elements 
now.

Modified:
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/plugin.xml

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/formatter/TextMarkerFormattedPrinter.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/ComposedRuleElement.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/ScriptFactory.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/TextMarkerAction.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/TextMarkerLogAction.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/TextMarkerRule.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/parser/ast/TextMarkerRuleElement.java

Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/plugin.xml
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/plugin.xml?rev=1175828&r1=1175827&r2=1175828&view=diff
==
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/plugin.xml (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/plugin.xml Mon Sep 26 
12:32:07 2011
@@ -1437,5 +1437,21 @@ under the License.

class="org.apache.uima.textmarker.ide.ui.DefaultTextMarkerSemanticHighlightingExtension">
  
   
-  
+ 
+  
+  
+   
+   
+  
+  
+   
 

Modified: 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g?rev=1175828&r1=1175827&r2=1175828&view=diff
==
--- 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g
 (original)
+++ 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g
 Mon Sep 26 12:32:07 2011
@@ -582,7 +582,7 @@ ruleElementComposed returns [ComposedRul
 |(ruleElements)=>res = ruleElements)

RPAREN q = quantifierPart? (LCURLY c = conditions? (THEN a = actions)? 
RCURLY)?
-   {re = ScriptFactory.createComposedRuleElement(res, q, c, a, 
$blockDeclaration::env);}
+   {re = ScriptFactory.createComposedRuleElement(res, q, c, a, 
disjunctive,$blockDeclaration::env);}
;
 
 ruleElementType returns [TextMarkerRuleElement re = null] 

Modified: 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.java?rev=1175828&r1=1175827&r2=1175828&view=diff
==
--- 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.java
 (original)
+++ 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.java
 Mon Sep 26 12:32:07 2011
@@ -1,4 +1,4 @@
-// $ANTLR 3.4 
D:\\work\\workspace-uima3\\uimaj-ep-textmarker-ide\\src\\main\\java\\org\\apache\\uima\\textmarker\\ide\\core\\parser\\TextMarkerParser.g
 2011-09-12 13:04:54
+// $ANTLR 3.4 
D:\\work\\workspace-uima3\\uimaj-ep-textmarker-ide\\src\\main\\java\\org\\apache\\uima\\textmarker\\ide\\core\\parser\\TextMarkerParser.g
 2011-09-26 13:38:53
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
@@ -3214,7 +3214,7 @@ public class TextMarkerParser extends Pa
 }
 
 
-if ( state.backtracking==0 ) {re = 
ScriptFactory.createComposedRuleElement(res, q, c, a, 
((blockDeclaration_scope)block

svn commit: r1175827 - in /uima/sandbox/trunk/TextMarker: uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/tex

2011-09-26 Thread joern
Author: joern
Date: Mon Sep 26 12:29:11 2011
New Revision: 1175827

URL: http://svn.apache.org/viewvc?rev=1175827&view=rev
Log:
UIMA-2236 Applied patch from Peter Klügl. Explanation for disjunctive and 
composed rule elements is working correctly now. Fixed visualization of rule 
matches and additionally fixed two bugs in the quantifiers that occurred 
because of these changes. 

Modified:

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ExplainTree.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/RuleElementMatchNode.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/ComposedRuleElement.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/ComposedRuleElementMatch.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/RuleElement.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/RuleMatch.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/TextMarkerDisjunctiveTypeMatcher.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/TextMarkerRuleElement.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/quantifier/MinMaxGreedy.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/quantifier/StarGreedy.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ScriptVerbalizer.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/TextMarkerVerbalizer.java

uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/visitor/DebugInfoFactory.java

Modified: 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ExplainTree.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ExplainTree.java?rev=1175827&r1=1175826&r2=1175827&view=diff
==
--- 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ExplainTree.java
 (original)
+++ 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/ExplainTree.java
 Mon Sep 26 12:29:11 2011
@@ -301,6 +301,15 @@ public class ExplainTree {
 for (FeatureStructure each : fsarray) {
   buildTree(each, remNode, ts, offset, onlyRules);
 }
+
+feature = fs.getType().getFeatureByBaseName(ExplainTree.ELEMENTS);
+value = (ArrayFS) fs.getFeatureValue(feature);
+if (value != null) {
+  fsarray = value.toArray();
+  for (FeatureStructure each : fsarray) {
+buildTree(each, remNode, ts, offset, onlyRules);
+  }
+}
   }
 
   private void processEvaluatedCondition(FeatureStructure fs, IExplainTreeNode 
parent,

Modified: 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/RuleElementMatchNode.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/RuleElementMatchNode.java?rev=1175827&r1=1175826&r2=1175827&view=diff
==
--- 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/RuleElementMatchNode.java
 (original)
+++ 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-addons/src/main/java/org/apache/uima/textmarker/explain/tree/RuleElementMatchNode.java
 Mon Sep 26 12:29:11 2011
@@ -15,7 +15,7 @@
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
-*/
+ */
 
 package org.apache.uima.textmarker.explain.tree;
 
@@ -26,7 +26,6 @@ import org.apache.uima.cas.TypeSystem;
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.cev.data.tree.ICEVAnnotationNode;
 
-
 public class RuleElementMatchNode extends ExplainAbstractTreeNode implements 
IEvaluatedNode,
 ICEVAnnotationNode {
 

Modified: 
uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/ComposedRuleElement.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/rule/