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); } }