package com.alexshabanov.springrestapi.domain;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
/**
* Provides common functionality for all the domain objects.
*/
public abstract class DomainObject {
@Override
public final int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}
@Override
public final boolean equals(Object obj) {
return EqualsBuilder.reflectionEquals(this, obj);
}
@Override
public final String toString() {
return ToStringBuilder.reflectionToString(this);
}
}