diff --git a/src/main/java/envoy/server/processors/MessageProcessor.java b/src/main/java/envoy/server/processors/MessageProcessor.java index ce86408..75757ab 100755 --- a/src/main/java/envoy/server/processors/MessageProcessor.java +++ b/src/main/java/envoy/server/processors/MessageProcessor.java @@ -6,6 +6,7 @@ import java.util.Date; import javax.persistence.EntityExistsException; import envoy.data.Message; +import envoy.data.Message.MessageStatus; import envoy.event.MessageStatusChangeEvent; import envoy.server.data.PersistenceManager; import envoy.server.net.ConnectionManager; @@ -30,12 +31,14 @@ public class MessageProcessor implements ObjectProcessor { ConnectionManager connectionManager = ConnectionManager.getInstance(); sendToUser(connectionManager, message, writeProxy); - // Sending a messageStatusChangeEvent to the sender - try { - writeProxy.write(socketID, new MessageStatusChangeEvent(message)); - } catch (IOException e) { - System.err.println("Could not send messageStatusChangeEvent to the sender of this message with ID: " + message.getID()); - e.printStackTrace(); + if (message.getStatus() != MessageStatus.SENT) { + // Sending a messageStatusChangeEvent to the sender + try { + writeProxy.write(socketID, new MessageStatusChangeEvent(message)); + } catch (IOException e) { + System.err.println("Could not send messageStatusChangeEvent to the sender of this message with ID: " + message.getID()); + e.printStackTrace(); + } } try { PersistenceManager.getInstance().addMessage(new envoy.server.data.Message(message));