Mercury-IM/entity/src/main/java/org/mercury_im/messenger/entity/message/Message.java

46 lines
867 B
Java
Raw Normal View History

2019-11-18 23:51:27 +01:00
package org.mercury_im.messenger.entity.message;
2019-11-08 00:47:17 +01:00
import org.jxmpp.jid.EntityJid;
2020-07-18 21:38:13 +02:00
import org.mercury_im.messenger.entity.Encryption;
import java.util.Date;
2019-12-21 16:30:14 +01:00
import java.util.UUID;
2020-05-16 15:53:54 +02:00
import lombok.Data;
@Data
public class Message {
UUID id;
2020-07-18 21:38:13 +02:00
UUID chatId;
EntityJid sender;
EntityJid recipient;
2020-07-18 21:38:13 +02:00
String body;
2020-05-16 15:53:54 +02:00
Date timestamp;
MessageDirection direction;
MessageDeliveryState deliveryState;
2020-07-18 21:38:13 +02:00
// <message id="blabla"/>
String legacyStanzaId;
2020-07-18 21:38:13 +02:00
// XEP-0359: Unique and Stable Stanza IDs
String stanzaId;
2020-07-18 21:38:13 +02:00
String originId;
// Serialized message
2020-07-13 01:39:26 +02:00
String xml;
2020-07-18 21:38:13 +02:00
Encryption encryption;
boolean received;
boolean read;
boolean pending;
2020-05-16 15:53:54 +02:00
public boolean isIncoming() {
2019-12-21 05:34:19 +01:00
return getDirection() == MessageDirection.incoming;
}
public Message() {
this.id = UUID.randomUUID();
}
}