package org.springframework.issues;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.hibernate.annotations.DynamicUpdate;
import org.springframework.format.annotation.DateTimeFormat;
@Entity
@DynamicUpdate
@JsonIgnoreProperties({ "sender", "recipient" })
public class Message {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Long id;
@Version
@Column(name = "version")
private Integer version;
@NotNull
@Temporal(TemporalType.TIMESTAMP)
@DateTimeFormat(pattern = "dd/MM/yyyy HH:mm:ss")
private Date sendDate;
private boolean messageRead;
@NotNull
@Size(min = 5, max = 500)
@Column(length = 500)
private String text;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public Date getSendDate() {
return sendDate;
}
public void setSendDate(Date sendDate) {
this.sendDate = sendDate;
}
public boolean isMessageRead() {
return messageRead;
}
public void setMessageRead(boolean messageRead) {
this.messageRead = messageRead;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}