Agree with jeremy.
I think here is a implementation to get the hashcode based on effective Java:
http://www.javapractices.com/topic/TopicAction.do?Id=28
How about to add below method to override the hashcode?
@Override
public int hashCode(){
if (fHashCode == 0) {
int result = HashCodeUtil.SEED;
result = HashCodeUtil.hash(result, from);
result = HashCodeUtil.hash(result, to);
}
return fHashCode;
}