package com.constellio.app.modules.rm.wrappers.structures; import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; import org.joda.time.LocalDateTime; import com.constellio.model.entities.records.wrappers.User; import com.constellio.model.entities.schemas.ModifiableStructure; public class Comment implements ModifiableStructure { String message; String userId; String username; LocalDateTime dateTime; boolean dirty; public Comment(String message, User user, LocalDateTime dateTime) { this.message = message; this.userId = user.getId(); this.username = user.getUsername(); this.dateTime = dateTime; } public Comment() { } public String getUserId() { return userId; } public String getUsername() { return username; } public void setUser(User user) { dirty = true; if (user != null) { userId = user.getId(); username = user.getUsername(); } } public String getMessage() { return message; } public void setMessage(String message) { dirty = true; this.message = message; } public LocalDateTime getDateTime() { return dateTime; } public void setDateTime(LocalDateTime dateTime) { dirty = true; this.dateTime = dateTime; } @Override public boolean isDirty() { return dirty; } @Override public String toString() { return "Comment{" + "message='" + message + '\'' + ", borrowUserId='" + userId + '\'' + ", borrowerUsername='" + username + '\'' + ", dateTime=" + dateTime + ", dirty=" + dirty + '}'; } @Override public int hashCode() { return HashCodeBuilder.reflectionHashCode(this, "dirty"); } @Override public boolean equals(Object obj) { return EqualsBuilder.reflectionEquals(this, obj, "dirty"); } }