Advertisement
Guest User

nautilus

a guest
Jun 26th, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. package my.id.ariefprasetyo.chat.controller;
  2.  
  3. import my.id.ariefprasetyo.chat.cache.ActiveUsers;
  4. import my.id.ariefprasetyo.chat.model.Message;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.messaging.handler.annotation.MessageMapping;
  7. import org.springframework.messaging.handler.annotation.Payload;
  8. import org.springframework.messaging.handler.annotation.SendTo;
  9. import org.springframework.messaging.simp.SimpMessageHeaderAccessor;
  10. import org.springframework.messaging.simp.SimpMessageSendingOperations;
  11. import org.springframework.stereotype.Controller;
  12.  
  13. @Controller
  14. public class SocketController {
  15.  
  16. @Autowired
  17. private SimpMessageSendingOperations messagingTemplate;
  18.  
  19. @MessageMapping("/socket/chatroom/sendmsg")
  20. @SendTo("/topic/public")
  21. public Message sendingPublicMessage(@Payload Message message){
  22. System.out.println(message);
  23. return message;
  24. }
  25.  
  26. @MessageMapping("/socket/personalchat/sendmsg")
  27. public void sendingPersonalMessage(@Payload Message message){
  28. System.out.println(message);
  29. messagingTemplate.convertAndSend("/topic/" + message.getMessageReceiver() , message);
  30. }
  31.  
  32. @MessageMapping("/socket/personalchat/adduser")
  33. @SendTo("/topic/public")
  34. public Message addPersonalUser(@Payload Message message, SimpMessageHeaderAccessor headerAccessor){
  35. System.out.println("New personal chat user added");
  36. System.out.println(message);
  37. headerAccessor.getSessionAttributes().put("username", message.getSender());
  38.  
  39. ActiveUsers.addUser(message.getSender());
  40. return message;
  41. }
  42.  
  43.  
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement