iterator
Class DuplElim

java.lang.Object
  extended byiterator.Iterator
      extended byiterator.DuplElim
All Implemented Interfaces:
Flags

public class DuplElim
extends Iterator

Eleminate the duplicate tuples from the input relation


Field Summary
 
Fields inherited from class iterator.Iterator
closeFlag
 
Fields inherited from interface global.Flags
DEBUG, TEST
 
Constructor Summary
DuplElim(AttrType[] in, short len_in, short[] s_sizes, Iterator am, int amt_of_mem, boolean inp_sorted)
          Constructor to set up some information.
 
Method Summary
 void close()
          implement the abstract method close() from super class Iterator to finish cleaning up
 Tuple get_next()
          The tuple is returned.
 
Methods inherited from class iterator.Iterator
free_buffer_pages, get_buffer_pages
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DuplElim

public DuplElim(AttrType[] in,
                short len_in,
                short[] s_sizes,
                Iterator am,
                int amt_of_mem,
                boolean inp_sorted)
         throws java.io.IOException,
                DuplElimException
Constructor to set up some information.

Parameters:
len_in - # of columns in R.
am - input relation iterator, access method for left input to join,
amt_of_mem - the page numbers required IN PAGES
Throws:
java.io.IOException - some I/O fault
DuplElimException - the exception from DuplElim.java
Method Detail

get_next

public Tuple get_next()
               throws java.io.IOException,
                      JoinsException,
                      index.IndexException,
                      InvalidTupleSizeException,
                      InvalidTypeException,
                      PageNotReadException,
                      TupleUtilsException,
                      PredEvalException,
                      SortException,
                      LowMemException,
                      UnknowAttrType,
                      UnknownKeyTypeException,
                      java.lang.Exception
The tuple is returned.

Specified by:
get_next in class Iterator
Returns:
call this function to get the tuple
Throws:
JoinsException - some join exception
index.IndexException - exception from super class
java.io.IOException - I/O errors
InvalidTupleSizeException - invalid tuple size
InvalidTypeException - tuple type not valid
PageNotReadException - exception from lower layer
TupleUtilsException - exception from using tuple utilities
PredEvalException - exception from PredEval class
SortException - sort exception
LowMemException - memory error
UnknowAttrType - attribute type unknown
UnknownKeyTypeException - key type unknown
java.lang.Exception - other exceptions

close

public void close()
           throws JoinsException
implement the abstract method close() from super class Iterator to finish cleaning up

Specified by:
close in class Iterator
Throws:
JoinsException - join error from lower layers