From 37c87a2c5d3cc6cd41dec6a54d15be350fda0098 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Sun, 26 Feb 2012 19:42:14 +0100 Subject: [PATCH] use google guava for hasCode, toString and equals method of person object --- .../java/sonia/scm/repository/Person.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/scm-core/src/main/java/sonia/scm/repository/Person.java b/scm-core/src/main/java/sonia/scm/repository/Person.java index 5d6d083950..29ea5b3d5b 100644 --- a/scm-core/src/main/java/sonia/scm/repository/Person.java +++ b/scm-core/src/main/java/sonia/scm/repository/Person.java @@ -35,6 +35,8 @@ package sonia.scm.repository; //~--- non-JDK imports -------------------------------------------------------- +import com.google.common.base.Objects; + import sonia.scm.Validateable; import sonia.scm.util.Util; import sonia.scm.util.ValidationUtil; @@ -128,6 +130,42 @@ public class Person implements Validateable, Serializable return person; } + /** + * {@inheritDoc} + * + * @param obj + * + * @return + */ + @Override + public boolean equals(Object obj) + { + if (obj == null) + { + return false; + } + + if (getClass() != obj.getClass()) + { + return false; + } + + Person other = (Person) obj; + + return Objects.equal(name, other.name) && Objects.equal(mail, other.mail); + } + + /** + * {@inheritDoc} + * + * @return + */ + @Override + public int hashCode() + { + return Objects.hashCode(name, mail); + } + /** * Returns a string representation of the {@link Person} object, * in the format "name >mail<".