[ovirt-devel] Implementing equals & hashCode methods

Yevgeny Zaspitsky yzaspits at redhat.com
Tue May 27 09:13:10 UTC 2014


Sorry, seems like I missed NOT in (3). :-(

So my opinion on the test coverage is NOT enough, which makes re-factoring dangerous.

I hope that will make the question clearer.

Yevgeny

----- Original Message -----
> From: "Yevgeny Zaspitsky" <yzaspits at redhat.com>
> To: devel at ovirt.org
> Sent: Sunday, May 25, 2014 3:33:31 PM
> Subject: Implementing equals & hashCode methods
> 
> Hi All,
> 
> Recently I reviewed a patch that adds a new business entity to the engine.
> The entity class has the following members:
> 
>     * id
>     * data center id
>     * name
>     * type
>     * some other properties that do not belong to the entity key
> 
> The equals & hashCode methods were implemented in a way that include all
> members.
> I asked the patch author to change that, so it'll include only business key
> (data center id, name and type), which define the entity uniqueness.
> Also I found that many other business entities are implemented in a similar
> way (include all class members in equals & hashCode).
> 
> I'm a new to oVirt, so I'd like to ask your opinion on the issue.
> 
> 
>     1. Do you agree with my approach on equals & hashCode.
>     2. If you agree with my approach in general, should we implement it in
>     the new introduced code or should we adhere to the old convention even
>     we do not agree with it?
>     3. Should we re-factor the old code (it might be dangerous as we do have
>     enough unit test coverage)?
> 
> Thanks in advance,
> Yevgeny
> 



More information about the Devel mailing list