/* * Copyright 2020 École des Mines de Saint-Étienne. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package fr.emse.gitlab.saref.entities; import org.eclipse.jgit.lib.PersonIdent; /** * * @author maxime.lefrancois */ public class Contributor { private final String name; private final String emailAddress; public Contributor(PersonIdent person) { name = person.getName(); emailAddress = person.getEmailAddress(); } public Contributor(String aName, String aEmailAddress) { name = aName; emailAddress = aEmailAddress; } /** * Get name of person * * @return Name of person */ public String getName() { return name; } /** * Get email address of person * * @return email address of person */ public String getEmailAddress() { return emailAddress; } /** * {@inheritDoc} *

* Hashcode is based only on the email address. */ @Override public int hashCode() { return getEmailAddress().hashCode(); } /** * {@inheritDoc} */ @Override public boolean equals(Object o) { if (o instanceof Contributor) { final Contributor p = (Contributor) o; return getName().equals(p.getName()) && getEmailAddress().equals(p.getEmailAddress()); } return false; } /** * {@inheritDoc} */ @Override public String toString() { final StringBuilder r = new StringBuilder(); r.append("Contributor["); r.append(getName()); r.append(", "); r.append(getEmailAddress()); r.append("]"); return r.toString(); } }