package org.dddlib.organisation.domain;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.dayatang.domain.ValueObject;
import javax.persistence.Embeddable;
@Embeddable
public class PersonName implements ValueObject {
private static final long serialVersionUID = -5782631381467586227L;
private String firstName;
private String lastName;
public PersonName() {
}
public PersonName(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
@Override
public int hashCode() {
return new HashCodeBuilder(31, 17).append(firstName).append(lastName)
.toHashCode();
}
@Override
public boolean equals(Object other) {
if (this == other) {
return true;
}
if (!(other instanceof PersonName)) {
return false;
}
PersonName that = (PersonName) other;
return new EqualsBuilder().append(this.firstName, that.firstName)
.append(this.lastName, that.lastName).isEquals();
}
@Override
public String toString() {
return lastName + firstName;
}
}