org.apache.manifoldcf.crawler.jobs
Class Carrydown.ResultDuplicateEliminator

java.lang.Object
  extended by org.apache.manifoldcf.crawler.jobs.Carrydown.ResultDuplicateEliminator
All Implemented Interfaces:
ILimitChecker
Enclosing class:
Carrydown

protected static class Carrydown.ResultDuplicateEliminator
extends java.lang.Object
implements ILimitChecker

Limit checker which removes duplicate rows, based on datavaluehash


Field Summary
protected  java.lang.String currentDataHashValue
           
 
Fields inherited from interface org.apache.manifoldcf.core.interfaces.ILimitChecker
_rcsid
 
Constructor Summary
Carrydown.ResultDuplicateEliminator()
           
 
Method Summary
 boolean checkContinue()
          See if we should examine another row.
 boolean checkInclude(IResultRow row)
          See if a result row should be included in the final result set.
 boolean doesCompareWork()
          See if this class can be legitimately compared against another of the same type.
 ILimitChecker duplicate()
          Create a duplicate of this class instance.
 boolean equals(java.lang.Object object)
          Compare two objects and see if equal.
 int hashCode()
          Find the hashcode for this class.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

currentDataHashValue

protected java.lang.String currentDataHashValue
Constructor Detail

Carrydown.ResultDuplicateEliminator

public Carrydown.ResultDuplicateEliminator()
Method Detail

doesCompareWork

public boolean doesCompareWork()
Description copied from interface: ILimitChecker
See if this class can be legitimately compared against another of the same type.

Specified by:
doesCompareWork in interface ILimitChecker
Returns:
true if comparisons will ever return "true".

duplicate

public ILimitChecker duplicate()
Description copied from interface: ILimitChecker
Create a duplicate of this class instance. All current state should be preserved.

Specified by:
duplicate in interface ILimitChecker
Returns:
the duplicate.

hashCode

public int hashCode()
Description copied from interface: ILimitChecker
Find the hashcode for this class. This will only ever be used if doesCompareWork() returns true.

Specified by:
hashCode in interface ILimitChecker
Overrides:
hashCode in class java.lang.Object
Returns:
the hashcode.

equals

public boolean equals(java.lang.Object object)
Description copied from interface: ILimitChecker
Compare two objects and see if equal. This will only ever be used if doesCompareWork() returns true.

Specified by:
equals in interface ILimitChecker
Overrides:
equals in class java.lang.Object
Parameters:
object - is the object to compare against.
Returns:
true if equal.

checkInclude

public boolean checkInclude(IResultRow row)
                     throws ManifoldCFException
See if a result row should be included in the final result set.

Specified by:
checkInclude in interface ILimitChecker
Parameters:
row - is the result row to check.
Returns:
true if it should be included, false otherwise.
Throws:
ManifoldCFException

checkContinue

public boolean checkContinue()
                      throws ManifoldCFException
See if we should examine another row.

Specified by:
checkContinue in interface ILimitChecker
Returns:
true if we need to keep going, or false if we are done.
Throws:
ManifoldCFException