net.grinder.common
Class AbstractTestSemantics

java.lang.Object
  extended by net.grinder.common.AbstractTestSemantics
All Implemented Interfaces:
java.lang.Comparable<Test>, Test
Direct Known Subclasses:
Test

public abstract class AbstractTestSemantics
extends java.lang.Object
implements Test

Base class which provides equality and ordering semantics for Test implementations.

Author:
Philip Aston

Constructor Summary
AbstractTestSemantics()
           
 
Method Summary
 int compareTo(Test o)
          Define ordering.
 boolean equals(java.lang.Object o)
          
 int hashCode()
          Define hash semantics.
 java.lang.String toString()
          
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.grinder.common.Test
getDescription, getNumber
 

Constructor Detail

AbstractTestSemantics

public AbstractTestSemantics()
Method Detail

compareTo

public final int compareTo(Test o)
Define ordering.

Specified by:
compareTo in interface java.lang.Comparable<Test>
Parameters:
o - Object to compare.
Returns:
-1 if o is less, 0 if its equal, 1 if its greater.

hashCode

public final int hashCode()
Define hash semantics. The test number is used as the hash code. I wondered whether it was worth distributing the hash codes more evenly across the range of an int, but using the value is good enough for java.lang.Integer so its good enough for us.

Overrides:
hashCode in class java.lang.Object
Returns:
The hash code.

equals

public final boolean equals(java.lang.Object o)

Overrides:
equals in class java.lang.Object

toString

public final java.lang.String toString()

Overrides:
toString in class java.lang.Object