Browse Source

extend DataType, equals non-final

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@454824 13f79535-47bb-0310-9956-ffa450edef68
master
Matthew Jason Benson 18 years ago
parent
commit
76a6b5c4c9
1 changed files with 10 additions and 3 deletions
  1. +10
    -3
      src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java

+ 10
- 3
src/main/org/apache/tools/ant/types/resources/comparators/ResourceComparator.java View File

@@ -19,13 +19,14 @@ package org.apache.tools.ant.types.resources.comparators;


import java.util.Comparator; import java.util.Comparator;


import org.apache.tools.ant.types.DataType;
import org.apache.tools.ant.types.Resource; import org.apache.tools.ant.types.Resource;


/** /**
* Abstract Resource Comparator. * Abstract Resource Comparator.
* @since Ant 1.7 * @since Ant 1.7
*/ */
public abstract class ResourceComparator implements Comparator {
public abstract class ResourceComparator extends DataType implements Comparator {


/** /**
* Compare two objects. * Compare two objects.
@@ -36,7 +37,10 @@ public abstract class ResourceComparator implements Comparator {
* @throws ClassCastException if either argument is null. * @throws ClassCastException if either argument is null.
*/ */
public final int compare(Object foo, Object bar) { public final int compare(Object foo, Object bar) {
return resourceCompare((Resource) foo, (Resource) bar);
dieOnCircularReference();
ResourceComparator c =
isReference() ? (ResourceComparator) getCheckedRef() : this;
return c.resourceCompare((Resource) foo, (Resource) bar);
} }


/** /**
@@ -44,7 +48,10 @@ public abstract class ResourceComparator implements Comparator {
* @param o the Object to compare against. * @param o the Object to compare against.
* @return true if the specified Object equals this one. * @return true if the specified Object equals this one.
*/ */
public final boolean equals(Object o) {
public boolean equals(Object o) {
if (isReference()) {
return getCheckedRef().equals(o);
}
if (o == null) { if (o == null) {
return false; return false;
} }


Loading…
Cancel
Save