package compbio.proteocache.users; import java.io.Serializable; import java.util.Date; import org.springframework.format.annotation.DateTimeFormat; import static org.apache.commons.lang.builder.EqualsBuilder.*; import static org.apache.commons.lang.builder.HashCodeBuilder.*; import static org.apache.commons.lang.builder.ToStringBuilder.*; public class User implements Serializable { /** * */ private static final long serialVersionUID = 1L; private Long id = -1L; private String email; private String password; private String fullName; private boolean updateByEmail; private String position; private String organisation; @DateTimeFormat(pattern = "hh:mma MMM d, YYYY") private Date registrationDate; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public void setEmail(String email) { this.email = email; } public String getEmail() { return email; } public String getPassword() { return this.password; } public void setPassword(String password) { this.password = password; } public void setFullName(String fullName) { this.fullName = fullName; } public String getFullName() { return fullName; } public String getPosition() { return position; } public void setPosition(String position) { this.position = position; } public void setOrganisation(String organisation) { this.organisation = organisation; } private String checkNoUTFsymbols(String s) { if (null != s) { if (3 < s.length()) if (s.substring(0, 2).matches("^&#")) { return "Unknown organization"; } } return s; } public String getOrganisation() { return checkNoUTFsymbols(organisation); } public void setUpdateByEmail(boolean updateByEmail) { this.updateByEmail = updateByEmail; } public boolean isUpdateByEmail() { return updateByEmail; } public Date getRegistrationDate() { return this.registrationDate; } public void setRegistrationDate(Date registrationDate) { this.registrationDate = registrationDate; } // plumbing @Override public boolean equals(Object obj) { return reflectionEquals(this, obj); } @Override public int hashCode() { return reflectionHashCode(this); } @Override public String toString() { return reflectionToString(this); } }