1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| @Override // equals by reflection
public boolean equals(Object obj) {
LOG.debug("equals method on type: " + obj.getClass().getName());
if ( obj.getClass() == Unit.class ) {
return equalsById(obj);
}
return EqualsBuilder.reflectionEquals(this, obj,Constants.EXCLUDE_FIELDS);
}
// equals by id, can be usefull for some objets like Unit (infinite equal calls otherwise)
public boolean equalsById(Object obj) {
if (this == obj) {
return true;
}
if ( !(obj instanceof AbstractModel) ) {
return false;
}
AbstractModel castobj = (AbstractModel) obj;
return new EqualsBuilder().append(this.getId(), castobj.getId()).isEquals();
} |
Partager