org.apache.hadoop.mapred.join
Class MultiFilterRecordReader.MultiFilterDelegationIterator

java.lang.Object
  extended by org.apache.hadoop.mapred.join.MultiFilterRecordReader.MultiFilterDelegationIterator
All Implemented Interfaces:
ResetableIterator<V>
Enclosing class:
MultiFilterRecordReader<K extends WritableComparable,V extends Writable>

protected class MultiFilterRecordReader.MultiFilterDelegationIterator
extends Object
implements ResetableIterator<V>

Proxy the JoinCollector, but include callback to emit.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.hadoop.mapred.join.ResetableIterator
ResetableIterator.EMPTY<U extends Writable>
 
Constructor Summary
protected MultiFilterRecordReader.MultiFilterDelegationIterator()
           
 
Method Summary
 void add(V item)
          Add an element to the collection of elements to iterate over.
 void clear()
          Close datasources, but do not release internal resources.
 void close()
          Close datasources and release resources.
 boolean hasNext()
          True if a call to next may return a value.
 boolean next(V val)
          Assign next value to actual.
 boolean replay(V val)
          Assign last value returned to actual.
 void reset()
          Set iterator to return to the start of its range.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiFilterRecordReader.MultiFilterDelegationIterator

protected MultiFilterRecordReader.MultiFilterDelegationIterator()
Method Detail

hasNext

public boolean hasNext()
Description copied from interface: ResetableIterator
True if a call to next may return a value. This is permitted false positives, but not false negatives.

Specified by:
hasNext in interface ResetableIterator<V extends Writable>

next

public boolean next(V val)
             throws IOException
Description copied from interface: ResetableIterator
Assign next value to actual. It is required that elements added to a ResetableIterator be returned in the same order after a call to ResetableIterator.reset() (FIFO). Note that a call to this may fail for nested joins (i.e. more elements available, but none satisfying the constraints of the join)

Specified by:
next in interface ResetableIterator<V extends Writable>
Throws:
IOException

replay

public boolean replay(V val)
               throws IOException
Description copied from interface: ResetableIterator
Assign last value returned to actual.

Specified by:
replay in interface ResetableIterator<V extends Writable>
Throws:
IOException

reset

public void reset()
Description copied from interface: ResetableIterator
Set iterator to return to the start of its range. Must be called after calling ResetableIterator.add(T) to avoid a ConcurrentModificationException.

Specified by:
reset in interface ResetableIterator<V extends Writable>

add

public void add(V item)
         throws IOException
Description copied from interface: ResetableIterator
Add an element to the collection of elements to iterate over.

Specified by:
add in interface ResetableIterator<V extends Writable>
Throws:
IOException

close

public void close()
           throws IOException
Description copied from interface: ResetableIterator
Close datasources and release resources. Calling methods on the iterator after calling close has undefined behavior.

Specified by:
close in interface ResetableIterator<V extends Writable>
Throws:
IOException

clear

public void clear()
Description copied from interface: ResetableIterator
Close datasources, but do not release internal resources. Calling this method should permit the object to be reused with a different datasource.

Specified by:
clear in interface ResetableIterator<V extends Writable>


Copyright © 2009 The Apache Software Foundation