package com.flexpoker.core.chat; import javax.inject.Inject; import org.springframework.messaging.simp.SimpMessageSendingOperations; import org.springframework.stereotype.Component; import com.flexpoker.core.api.chat.SendGlobalChatMessageCommand; import com.flexpoker.model.chat.outgoing.GlobalChatMessage; import com.flexpoker.util.MessagingConstants; @Component public class SendSimpleGlobalChatMessageCommand implements SendGlobalChatMessageCommand { private final SimpMessageSendingOperations messagingTemplate; @Inject public SendSimpleGlobalChatMessageCommand(SimpMessageSendingOperations messagingTemplate) { this.messagingTemplate = messagingTemplate; } @Override public void execute(GlobalChatMessage chatMessage) { if (chatMessage.isSystemMessage()) { messagingTemplate.convertAndSend(MessagingConstants.CHAT_GLOBAL_SYSTEM, "System: " + chatMessage.getMessage()); } else { messagingTemplate.convertAndSend(MessagingConstants.CHAT_GLOBAL_USER, chatMessage.getSenderUsername() + ": " + chatMessage.getMessage()); } } }