org.apache.tools.ant.types.resources.comparators
Class ResourceComparator

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by org.apache.tools.ant.types.resources.comparators.ResourceComparator
All Implemented Interfaces:
java.lang.Cloneable, java.util.Comparator
Direct Known Subclasses:
Content, Date, DelegatedResourceComparator, Exists, FileSystem, Name, Reverse, Size, Type

public abstract class ResourceComparator
extends DataType
implements java.util.Comparator

Abstract Resource Comparator.

Since:
Ant 1.7

Field Summary
 
Fields inherited from class org.apache.tools.ant.types.DataType
checked, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
ResourceComparator()
           
 
Method Summary
 int compare(java.lang.Object foo, java.lang.Object bar)
          Compare two objects.
 boolean equals(java.lang.Object o)
          Test for equality with this ResourceComparator.
 int hashCode()
          Hashcode based on the rules for equality.
protected abstract  int resourceCompare(Resource foo, Resource bar)
          Compare two Resources.
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, setChecked, setRefid, tooManyAttributes, toString
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ResourceComparator

public ResourceComparator()
Method Detail

compare

public final int compare(java.lang.Object foo,
                         java.lang.Object bar)
Compare two objects.

Specified by:
compare in interface java.util.Comparator
Parameters:
foo - the first Object.
bar - the second Object.
Returns:
a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
Throws:
java.lang.ClassCastException - if either argument is null.

equals

public boolean equals(java.lang.Object o)
Test for equality with this ResourceComparator.

Specified by:
equals in interface java.util.Comparator
Overrides:
equals in class java.lang.Object
Parameters:
o - the Object to compare against.
Returns:
true if the specified Object equals this one.

hashCode

public int hashCode()
Hashcode based on the rules for equality.

Overrides:
hashCode in class java.lang.Object
Returns:
a hashcode.

resourceCompare

protected abstract int resourceCompare(Resource foo,
                                       Resource bar)
Compare two Resources.

Parameters:
foo - the first Resource.
bar - the second Resource.
Returns:
a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.