@Override public void receivedDelete(Chat chat, String nid) { Chat localChat = chatHelper.getChat(chat.getNetworkChatID()); if (chat.isAdmin(nid)) { if (localChat != null && localChat.isGroupChat()) { chatHelper.delete(chat); } } else { if (localChat != null && localChat.isGroupChat()) { chatHelper.removeReceiver(chat, contactHelper.getContactByNetworkingID(nid)); } } }
@Override public void receivedUpdate(Chat chat) { if (!containsSelf(chat)) { return; } if (!chat.isGroupChat()) { Chat oldChat = chatHelper.getChat(chat.getNetworkChatID()); if (oldChat == null) { Contact self = contactHelper.getSelf(); for (Contact c : chat.getReceivers()) { if (!c.getNetworkingId().equals(self.getNetworkingId())) { chat.setTitle(c.getName(context)); } } } else { chat.setTitle(oldChat.getTitle()); } } chatHelper.update(chat); }
@Override public void inserted(Chat chat) { if (chat.isAdmin(self) && chat.isGroupChat()) { messagingProtocol.sendCreateChat(chat); } }