diff --git a/entity/src/main/java/org/mercury_im/messenger/core/entity/Chat.java b/entity/src/main/java/org/mercury_im/messenger/core/entity/Chat.java index aac37fc..d5a858c 100644 --- a/entity/src/main/java/org/mercury_im/messenger/core/entity/Chat.java +++ b/entity/src/main/java/org/mercury_im/messenger/core/entity/Chat.java @@ -12,4 +12,7 @@ public interface Chat< void setAccount(AC account); + ChatPreferences getChatPreferences(); + + void setChatPreferences(ChatPreferences chatPreferences); } diff --git a/entity/src/main/java/org/mercury_im/messenger/core/entity/ChatPreferences.java b/entity/src/main/java/org/mercury_im/messenger/core/entity/ChatPreferences.java new file mode 100644 index 0000000..af7db4b --- /dev/null +++ b/entity/src/main/java/org/mercury_im/messenger/core/entity/ChatPreferences.java @@ -0,0 +1,36 @@ +package org.mercury_im.messenger.core.entity; + +public interface ChatPreferences { + + NotificationPreferences getNotificationPreference(); + + boolean setNotificationPreference(NotificationPreferences notificationPreferences); + + boolean isTypingNotificationsSupported(); + + void setTypingNotificationsSupported(boolean typingNotificationsSupported); + + boolean isSendTypingNotifications(); + + void setSendTypingNotifications(boolean sendTypingNotifications); + + boolean isReadNotificationsSupported(); + + void setReadNotificationsSupported(boolean readNotificationsSupported); + + boolean isSendReadNotifications(); + + void setSendReadNotifications(boolean sendReadNotifications); + + + interface NotificationPreferences { + + boolean isNotifyOnMessage(); + + void setNotifyOnMessage(boolean notify); + + boolean isNotifyOnMention(); + + void setNotifyOnMention(boolean notify); + } +} diff --git a/entity/src/main/java/org/mercury_im/messenger/core/entity/Message.java b/entity/src/main/java/org/mercury_im/messenger/core/entity/Message.java index 3cfe37e..0184db8 100644 --- a/entity/src/main/java/org/mercury_im/messenger/core/entity/Message.java +++ b/entity/src/main/java/org/mercury_im/messenger/core/entity/Message.java @@ -31,5 +31,4 @@ public interface Message { MM getMetadata(); void setMetadata(MM metadata); - } diff --git a/entity/src/main/java/org/mercury_im/messenger/core/entity/MessageContent.java b/entity/src/main/java/org/mercury_im/messenger/core/entity/MessageContent.java new file mode 100644 index 0000000..2bb7133 --- /dev/null +++ b/entity/src/main/java/org/mercury_im/messenger/core/entity/MessageContent.java @@ -0,0 +1,8 @@ +package org.mercury_im.messenger.core.entity; + +public interface MessageContent { + + String getBody(); + + void setBody(String body); +} diff --git a/repository_xmpp/build.gradle b/repository_xmpp/build.gradle index 933be74..48eb0b9 100644 --- a/repository_xmpp/build.gradle +++ b/repository_xmpp/build.gradle @@ -10,6 +10,7 @@ dependencies { // implementation project(":core") implementation project(":entity_xmpp") + implementation project(":repository") // JXMPP for Jid types. Version comes from smacks version.gradle api("org.jxmpp:jxmpp-jid:$jxmppVersion")