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.Column;
import javax.persistence.Embeddable;
@Embeddable
public class Email implements ValueObject {
private static final long serialVersionUID = -734927401730610904L;
@Column(name = "email")
private String address;
protected Email() {
}
public Email(String address) {
this.address = address;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public int hashCode() {
return new HashCodeBuilder(31, 17).append(address).toHashCode();
}
@Override
public boolean equals(Object other) {
if (this == other) {
return true;
}
if (!(other instanceof Email)) {
return false;
}
Email that = (Email) other;
return new EqualsBuilder().append(this.address, that.address).isEquals();
}
@Override
public String toString() {
return address;
}
}