package com.qprogramming.tasq.chat; import com.qprogramming.tasq.account.Account; import com.qprogramming.tasq.support.Utils; import javax.persistence.*; import java.util.Date; /** * Created by Khobar on 07.01.2017. */ @Entity public class ChatMessage { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "chat_seq_gen") @SequenceGenerator(name = "chat_seq_gen", sequenceName = "chat_id_seq", allocationSize = 1) private Long id; @ManyToOne private Account account; @Column private Date time; @Column(length = 4000) private String message; @Column private String project; public ChatMessage() { } public ChatMessage(String message) { this.message = message; this.time = new Date(); } public ChatMessage(String message, Account account, String project) { this.account = account; this.message = message; this.time = new Date(); this.project = project; } public Account getAccount() { return account; } public void setAccount(Account account) { this.account = account; } public Date getRawTime() { return this.time; } public String getTime() { return Utils.convertDateTimeToString(time); } public void setTime(Date time) { this.time = time; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getProject() { return project; } public void setProject(String project) { this.project = project; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ChatMessage that = (ChatMessage) o; if (id != null ? !id.equals(that.id) : that.id != null) return false; if (account != null ? !account.equals(that.account) : that.account != null) return false; if (time != null ? !time.equals(that.time) : that.time != null) return false; if (message != null ? !message.equals(that.message) : that.message != null) return false; return project != null ? project.equals(that.project) : that.project == null; } @Override public int hashCode() { int result = id != null ? id.hashCode() : 0; result = 31 * result + (account != null ? account.hashCode() : 0); result = 31 * result + (time != null ? time.hashCode() : 0); result = 31 * result + (message != null ? message.hashCode() : 0); result = 31 * result + (project != null ? project.hashCode() : 0); return result; } }