Created
August 15, 2017 15:24
-
-
Save ishaquehassan/81e34d5e9635515736ea7fe3783a9f91 to your computer and use it in GitHub Desktop.
A Simple chat messages model for Android Native using JAVA
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.cyberavanza.chat.model; | |
import android.view.View; | |
/** | |
* Created by Ishaq Hassan | |
*/ | |
public class Message { | |
int id; | |
String name; | |
String time; | |
TextMessage textMessage; | |
ImageMessage imageMessage; | |
VoiceMessage voiceMessage; | |
DocumentMessage documentMessage; | |
MessageType messageType; | |
View.OnClickListener clickListener; | |
boolean fromMe = false; | |
public Message() {} | |
public Message(int id, String name, String time, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.TEXT; | |
} | |
public Message(int id, String name, String time, TextMessage textMessage, ImageMessage imageMessage, VoiceMessage voiceMessage, DocumentMessage documentMessage, MessageType messageType, View.OnClickListener clickListener, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.textMessage = textMessage; | |
this.imageMessage = imageMessage; | |
this.voiceMessage = voiceMessage; | |
this.documentMessage = documentMessage; | |
this.messageType = messageType; | |
this.clickListener = clickListener; | |
this.fromMe = fromMe; | |
} | |
public Message(int id, String name, String time, TextMessage textMessage, boolean fromMe, View.OnClickListener clickListener) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.textMessage = textMessage; | |
this.fromMe = fromMe; | |
this.clickListener = clickListener; | |
this.messageType = MessageType.TEXT; | |
} | |
public Message(int id, String name, String time, TextMessage textMessage, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.textMessage = textMessage; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.TEXT; | |
} | |
public Message(int id, String name, String time, ImageMessage imageMessage, boolean fromMe, View.OnClickListener clickListener) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.imageMessage = imageMessage; | |
this.clickListener = clickListener; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.IMAGE; | |
} | |
public Message(int id, String name, String time, ImageMessage imageMessage, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.imageMessage = imageMessage; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.IMAGE; | |
} | |
public Message(int id, String name, String time, VoiceMessage voiceMessage, boolean fromMe, View.OnClickListener clickListener) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.voiceMessage = voiceMessage; | |
this.clickListener = clickListener; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.VOICE; | |
} | |
public Message(int id, String name, String time, VoiceMessage voiceMessage, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.voiceMessage = voiceMessage; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.VOICE; | |
} | |
public Message(int id, String name, String time, DocumentMessage documentMessage, boolean fromMe, View.OnClickListener clickListener) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.documentMessage = documentMessage; | |
this.clickListener = clickListener; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.DOCUMENT; | |
} | |
public Message(int id, String name, String time, DocumentMessage documentMessage, boolean fromMe) { | |
this.id = id; | |
this.name = name; | |
this.time = time; | |
this.documentMessage = documentMessage; | |
this.fromMe = fromMe; | |
this.messageType = MessageType.DOCUMENT; | |
} | |
public int getId() { | |
return id; | |
} | |
public void setId(int id) { | |
this.id = id; | |
} | |
public String getName() { | |
return name; | |
} | |
public void setName(String name) { | |
this.name = name; | |
} | |
public String getTime() { | |
return time; | |
} | |
public void setTime(String time) { | |
this.time = time; | |
} | |
public TextMessage getTextMessage() { | |
return textMessage; | |
} | |
public void setTextMessage(TextMessage textMessage) { | |
this.setMessageType(MessageType.TEXT); | |
this.textMessage = textMessage; | |
} | |
public ImageMessage getImageMessage() { | |
return imageMessage; | |
} | |
public void setImageMessage(ImageMessage imageMessage) { | |
this.setMessageType(MessageType.IMAGE); | |
this.imageMessage = imageMessage; | |
} | |
public VoiceMessage getVoiceMessage() { | |
return voiceMessage; | |
} | |
public void setVoiceMessage(VoiceMessage voiceMessage) { | |
this.setMessageType(MessageType.VOICE); | |
this.voiceMessage = voiceMessage; | |
} | |
public DocumentMessage getDocumentMessage() { | |
return documentMessage; | |
} | |
public void setDocumentMessage(DocumentMessage documentMessage) { | |
this.setMessageType(MessageType.DOCUMENT); | |
this.documentMessage = documentMessage; | |
} | |
public MessageType getMessageType() { | |
return messageType; | |
} | |
public void setMessageType(MessageType messageType) { | |
this.messageType = messageType; | |
} | |
public View.OnClickListener getClickListener() { | |
return clickListener; | |
} | |
public void setClickListener(View.OnClickListener clickListener) { | |
this.clickListener = clickListener; | |
} | |
public boolean isFromMe() { | |
return fromMe; | |
} | |
public void setFromMe(boolean fromMe) { | |
this.fromMe = fromMe; | |
} | |
public static class GeneralTypeMessage{ | |
} | |
public static class TextMessage extends GeneralTypeMessage{ | |
String messageText; | |
public TextMessage(String messageText) { | |
this.messageText = messageText; | |
} | |
public String getMessageText() { | |
return messageText; | |
} | |
public void setMessageText(String messageText) { | |
this.messageText = messageText; | |
} | |
} | |
public static class ImageMessage extends GeneralTypeMessage{ | |
String messageImageUrl; | |
public ImageMessage(String messageImageUrl) { | |
this.messageImageUrl = messageImageUrl; | |
} | |
public String getMessageImageUrl() { | |
return messageImageUrl; | |
} | |
public void setMessageImageUrl(String messageImageUrl) { | |
this.messageImageUrl = messageImageUrl; | |
} | |
} | |
public static class VoiceMessage extends GeneralTypeMessage{ | |
String messageVoiceUrl; | |
public VoiceMessage(String messageVoiceUrl) { | |
this.messageVoiceUrl = messageVoiceUrl; | |
} | |
public String getMessageVoiceUrl() { | |
return messageVoiceUrl; | |
} | |
public void setMessageVoiceUrl(String messageVoiceUrl) { | |
this.messageVoiceUrl = messageVoiceUrl; | |
} | |
} | |
public static class DocumentMessage extends GeneralTypeMessage{ | |
String messageDocumentName; | |
String messageDocumentUrl; | |
public DocumentMessage(String messageDocumentName, String messageDocumentUrl) { | |
this.messageDocumentName = messageDocumentName; | |
this.messageDocumentUrl = messageDocumentUrl; | |
} | |
public String getMessageDocumentName() { | |
return messageDocumentName; | |
} | |
public void setMessageDocumentName(String messageDocumentName) { | |
this.messageDocumentName = messageDocumentName; | |
} | |
public String getMessageDocumentUrl() { | |
return messageDocumentUrl; | |
} | |
public void setMessageDocumentUrl(String messageDocumentUrl) { | |
this.messageDocumentUrl = messageDocumentUrl; | |
} | |
} | |
public enum MessageType { | |
TEXT, | |
IMAGE, | |
VOICE, | |
DOCUMENT | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment