You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
942 B

  1. package ru.digitalbanana.demoresourceserver.websocket.controller;
  2. import java.security.Principal;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.messaging.handler.annotation.MessageMapping;
  5. import org.springframework.messaging.simp.SimpMessageSendingOperations;
  6. import org.springframework.security.core.annotation.AuthenticationPrincipal;
  7. import org.springframework.stereotype.Controller;
  8. import lombok.extern.slf4j.Slf4j;
  9. @Controller
  10. @Slf4j
  11. public class SimpleController {
  12. @Autowired
  13. private SimpMessageSendingOperations messaging;
  14. @MessageMapping("/simple")
  15. public void simple(@AuthenticationPrincipal Principal principal) {
  16. String userId = principal.getName();
  17. log.info("Received simple message from {}", userId);
  18. messaging.convertAndSendToUser(
  19. userId,
  20. "/simple",
  21. "Hello, my friend!!!!!"
  22. );
  23. }
  24. }