All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.cyclopsgroup.kaufman.interfaces.BaseComparableBean Maven / Gradle / Ivy

The newest version!
package org.cyclopsgroup.kaufman.interfaces;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

/**
 * A class where {@link #hashCode()}, {@link #equals(Object)} and {@link #toString()} are implemented with builders in
 * commons-lang, which makes derived classes easy to compare in unit tests
 */
public abstract class BaseComparableBean
{
    /**
     * @inheritDoc
     */
    @Override
    public int hashCode()
    {
        return HashCodeBuilder.reflectionHashCode( this );
    }

    /**
     * @inheritDoc
     */
    @Override
    public boolean equals( Object obj )
    {
        return EqualsBuilder.reflectionEquals( this, obj );
    }

    /**
     * @inheritDoc
     */
    @Override
    public String toString()
    {
        return ToStringBuilder.reflectionToString( this );
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy