示例#1
0
 @SubscribeMapping("/topic/activity")
 @SendTo("/topic/tracker")
 public ActivityDTO sendActivity(
     @Payload ActivityDTO activityDTO,
     StompHeaderAccessor stompHeaderAccessor,
     Principal principal) {
   activityDTO.setUserLogin(SecurityUtils.getCurrentUserLogin());
   activityDTO.setUserLogin(principal.getName());
   activityDTO.setSessionId(stompHeaderAccessor.getSessionId());
   activityDTO.setIpAddress(stompHeaderAccessor.getSessionAttributes().get(IP_ADDRESS).toString());
   Instant instant = Instant.ofEpochMilli(Calendar.getInstance().getTimeInMillis());
   activityDTO.setTime(
       dateTimeFormatter.format(ZonedDateTime.ofInstant(instant, ZoneOffset.systemDefault())));
   log.debug("Sending user tracking data {}", activityDTO);
   return activityDTO;
 }