Implemented the GroupMessage class
This commit is contained in:
		
							
								
								
									
										221
									
								
								src/main/java/envoy/server/data/GroupMessage.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										221
									
								
								src/main/java/envoy/server/data/GroupMessage.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,221 @@ | ||||
| package envoy.server.data; | ||||
|  | ||||
| import java.util.Date; | ||||
| import java.util.Map; | ||||
|  | ||||
| import javax.persistence.CascadeType; | ||||
| import javax.persistence.ElementCollection; | ||||
| import javax.persistence.Entity; | ||||
| import javax.persistence.Id; | ||||
| import javax.persistence.ManyToOne; | ||||
| import javax.persistence.Table; | ||||
| import javax.persistence.Temporal; | ||||
| import javax.persistence.TemporalType; | ||||
|  | ||||
| /** | ||||
|  * Project: <strong>envoy-server-standalone</strong><br> | ||||
|  * File: <strong>GroupMessage.java</strong><br> | ||||
|  * Created: <strong>18.04.2020</strong><br> | ||||
|  *  | ||||
|  * @author Maximilian Käfer | ||||
|  * @since Envoy Server Standalone v0.1-beta | ||||
|  */ | ||||
|  | ||||
| @Entity | ||||
| @Table(name = "groupMessages") | ||||
| // @NamedQuery() | ||||
| // TODO Add Queries | ||||
| public class GroupMessage { | ||||
|  | ||||
| 	@Id | ||||
| 	private long id; | ||||
|  | ||||
| 	@ManyToOne(cascade = CascadeType.PERSIST) | ||||
| 	private User sender; | ||||
|  | ||||
| 	@ManyToOne(cascade = CascadeType.PERSIST) | ||||
| 	private Group group; | ||||
|  | ||||
| 	@Temporal(TemporalType.TIMESTAMP) | ||||
| 	private Date creationDate; | ||||
|  | ||||
| 	@Temporal(TemporalType.TIMESTAMP) | ||||
| 	private Date receivedDate; | ||||
|  | ||||
| 	@Temporal(TemporalType.TIMESTAMP) | ||||
| 	private Date readDate; | ||||
|  | ||||
| 	@ElementCollection | ||||
| 	private Map<Long, envoy.data.Message.MessageStatus> memberMessageStatus; | ||||
|  | ||||
| 	private String								text; | ||||
| 	private envoy.data.Message.MessageStatus	status; | ||||
| 	private byte[]								attachment; | ||||
| 	private boolean								forwarded; | ||||
|  | ||||
| 	/** | ||||
| 	 * The constructor for a database object. | ||||
| 	 * | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public GroupMessage() {} | ||||
|  | ||||
| 	/** | ||||
| 	 * Constructs a database groupMessage from a common groupMessage. | ||||
| 	 * | ||||
| 	 * @param groupMessage the {@link envoy.data.GroupMessage} to convert into a | ||||
| 	 *                     database {@link GroupMessage} | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public GroupMessage(envoy.data.GroupMessage groupMessage) { | ||||
| 		PersistenceManager persistenceManager = PersistenceManager.getInstance(); | ||||
| 		id					= groupMessage.getID(); | ||||
| 		status				= groupMessage.getStatus(); | ||||
| 		text				= groupMessage.getText(); | ||||
| 		creationDate		= groupMessage.getCreationDate(); | ||||
| 		receivedDate		= groupMessage.getReceivedDate(); | ||||
| 		readDate			= groupMessage.getReadDate(); | ||||
| 		sender				= persistenceManager.getUserByID(groupMessage.getSenderID()); | ||||
| 		group				= persistenceManager.getGroupByID(groupMessage.getRecipientID()); | ||||
| 		forwarded			= groupMessage.isForwarded(); | ||||
| 		memberMessageStatus	= groupMessage.getMemberStatuses(); | ||||
| 		// TODO: attachment = groupMessage.getAttachment().toByteArray();DOES NOT WORK | ||||
| 		// YET | ||||
| 	} | ||||
|  | ||||
| 	// TODO Implement GroupMessageBuilder and add toCommonGroupMessage method here | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the id | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public long getId() { return id; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param id the id to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setId(long id) { this.id = id; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the sender | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public User getSender() { return sender; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param sender the sender to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setSender(User sender) { this.sender = sender; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the group | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public Group getGroup() { return group; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param group the group to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setGroup(Group group) { this.group = group; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the creationDate | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public Date getCreationDate() { return creationDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param creationDate the creationDate to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setCreationDate(Date creationDate) { this.creationDate = creationDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the receivedDate | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public Date getReceivedDate() { return receivedDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param receivedDate the receivedDate to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setReceivedDate(Date receivedDate) { this.receivedDate = receivedDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the readDate | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public Date getReadDate() { return readDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param readDate the readDate to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setReadDate(Date readDate) { this.readDate = readDate; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the memberMessageStatus | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public Map<Long, envoy.data.Message.MessageStatus> getMemberMessageStatus() { return memberMessageStatus; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param memberMessageStatus the memberMessageStatus to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setMemberMessageStatus(Map<Long, envoy.data.Message.MessageStatus> memberMessageStatus) { | ||||
| 		this.memberMessageStatus = memberMessageStatus; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the text | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public String getText() { return text; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param text the text to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setText(String text) { this.text = text; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the status | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public envoy.data.Message.MessageStatus getStatus() { return status; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param status the status to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setStatus(envoy.data.Message.MessageStatus status) { this.status = status; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the attachment | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public byte[] getAttachment() { return attachment; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param attachment the attachment to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setAttachment(byte[] attachment) { this.attachment = attachment; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the forwarded | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public boolean isForwarded() { return forwarded; } | ||||
|  | ||||
| 	/** | ||||
| 	 * @param forwarded the forwarded to set | ||||
| 	 * @since Envoy Server Standalone v0.1-beta | ||||
| 	 */ | ||||
| 	public void setForwarded(boolean forwarded) { this.forwarded = forwarded; } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 DieGurke
					DieGurke