aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
diff options
context:
space:
mode:
authorsteckbrief <steckbrief@chefmail.de>2018-05-05 20:28:04 +0200
committersteckbrief <steckbrief@chefmail.de>2018-05-05 20:28:04 +0200
commitb0780224b5bdd68d74ef514e64e14ce9d37d7b90 (patch)
tree04311ea20090216b4897bcb507d79c7e02f76eae /src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
parent853f50e43f68599774469dd12240f35800144991 (diff)
introduces new message state model
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java')
-rw-r--r--src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java b/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
index 3534ccd2..344e25a2 100644
--- a/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
+++ b/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
@@ -6,6 +6,8 @@ import de.thedevstack.conversationsplus.entities.Conversation;
import de.thedevstack.conversationsplus.entities.Message;
import de.thedevstack.conversationsplus.entities.Transferable;
import de.thedevstack.conversationsplus.entities.TransferablePlaceholder;
+import de.thedevstack.conversationsplus.enums.MessageDirection;
+import de.thedevstack.conversationsplus.enums.MessageStatus;
import de.thedevstack.conversationsplus.utils.MessageUtil;
import de.thedevstack.conversationsplus.utils.UiUpdateHelper;
import de.thedevstack.conversationsplus.utils.XmppConnectionServiceAccessor;
@@ -30,11 +32,10 @@ public class FileDeletionObserver extends FileObserver {
for (Conversation conversation : XmppConnectionServiceAccessor.xmppConnectionService.getConversations()) {
Message message = conversation.findMessageWithFileAndUuid(uuid);
if (message != null) {
- message.setTransferable(new TransferablePlaceholder(Transferable.STATUS_DELETED));
- final int s = message.getStatus();
- if (s == Message.STATUS_WAITING || s == Message.STATUS_OFFERED || s == Message.STATUS_UNSEND) {
- MessageUtil.markMessage(message, Message.STATUS_SEND_FAILED);
- } else {
+ MessageUtil.setAndSaveStatusForFileDeleted(message);
+ if (MessageUtil.isIncomingMessage(message)
+ || (MessageUtil.isOutgoingMessage(message)
+ && !(MessageStatus.TRANSMITTING == message.getMessageStatus() || MessageStatus.WAITING == message.getMessageStatus()))) {
UiUpdateHelper.updateConversationUi();
}
return;