You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2017/07/17 21:46:31 UTC

svn commit: r1802217 - /uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java

Author: schor
Date: Mon Jul 17 21:46:31 2017
New Revision: 1802217

URL: http://svn.apache.org/viewvc?rev=1802217&view=rev
Log:
[UIMA-5250] make internal use of move operations which otherwise would reinit to index not do that. Have FilteredIterator be able to use LowLevelIterator methods.

Modified:
    uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java

Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java
URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java?rev=1802217&r1=1802216&r2=1802217&view=diff
==============================================================================
--- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java (original)
+++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/FilteredIterator.java Mon Jul 17 21:46:31 2017
@@ -28,10 +28,10 @@ import org.apache.uima.cas.FeatureStruct
 /**
  * Implements a filtered iterator.
  */
-class FilteredIterator<T extends FeatureStructure> implements FSIterator<T> {
+class FilteredIterator<T extends FeatureStructure> implements LowLevelIterator<T> {
 
   // The base iterator.
-  private FSIterator<T> it;
+  private LowLevelIterator<T> it;
 
   // The filter constraint.
   private FSMatchConstraint cons;
@@ -46,7 +46,7 @@ class FilteredIterator<T extends Feature
    */
   FilteredIterator(FSIterator<T> it, FSMatchConstraint cons) {
     this();
-    this.it = it;
+    this.it = (LowLevelIterator<T>) it;
     this.cons = cons;
     moveToFirst();
   }
@@ -74,12 +74,12 @@ class FilteredIterator<T extends Feature
   }
   
 
-  public void moveToFirst() {
-    this.it.moveToFirst();
+  public void moveToFirstNoReinit() {
+    this.it.moveToFirstNoReinit();
     adjustForConstraintForward();
   }
 
-  public void moveToLast() {
+  public void moveToLastNoReinit() {
     this.it.moveToLast();
     adjustForConstraintBackward();
   }
@@ -123,11 +123,36 @@ class FilteredIterator<T extends Feature
   /**
    * @see org.apache.uima.cas.FSIterator#moveTo(FeatureStructure)
    */
-  public void moveTo(FeatureStructure fs) {
-    this.it.moveTo(fs);
+  public void moveToNoReinit(FeatureStructure fs) {
+    this.it.moveToNoReinit(fs);
     adjustForConstraintForward();
   }
 
+  @Override
+  public int ll_indexSize() {
+    throw new UnsupportedOperationException();
+  }
+
+  @Override
+  public LowLevelIndex<T> ll_getIndex() {
+    throw new UnsupportedOperationException();
+  }
+
+  @Override
+  public int ll_maxAnnotSpan() {
+    throw new UnsupportedOperationException();
+  }
+
+  @Override
+  public boolean isIndexesHaveBeenUpdated() {
+    throw new UnsupportedOperationException();
+  }
+
+  @Override
+  public boolean maybeReinitIterator() {
+    return this.it.maybeReinitIterator();
+  }
+
 //  /* (non-Javadoc)
 //   * @see org.apache.uima.cas.impl.FSIteratorImplBase#moveTo(java.util.Comparator)
 //   */