void updateSimpMessageHeadersFromStompHeaders() {
   if (getNativeHeaders() == null) {
     return;
   }
   String value = getFirstNativeHeader(STOMP_DESTINATION_HEADER);
   if (value != null) {
     super.setDestination(value);
   }
   value = getFirstNativeHeader(STOMP_CONTENT_TYPE_HEADER);
   if (value != null) {
     super.setContentType(MimeTypeUtils.parseMimeType(value));
   }
   StompCommand command = getCommand();
   if (StompCommand.MESSAGE.equals(command)) {
     value = getFirstNativeHeader(STOMP_SUBSCRIPTION_HEADER);
     if (value != null) {
       super.setSubscriptionId(value);
     }
   } else if (StompCommand.SUBSCRIBE.equals(command) || StompCommand.UNSUBSCRIBE.equals(command)) {
     value = getFirstNativeHeader(STOMP_ID_HEADER);
     if (value != null) {
       super.setSubscriptionId(value);
     }
   } else if (StompCommand.CONNECT.equals(command)) {
     protectPasscode();
   }
 }
 @Override
 public String getShortLogMessage(Object payload) {
   if (StompCommand.SUBSCRIBE.equals(getCommand())) {
     return "SUBSCRIBE " + getDestination() + " id=" + getSubscriptionId() + appendSession();
   } else if (StompCommand.UNSUBSCRIBE.equals(getCommand())) {
     return "UNSUBSCRIBE id=" + getSubscriptionId() + appendSession();
   } else if (StompCommand.SEND.equals(getCommand())) {
     return "SEND " + getDestination() + appendSession() + appendPayload(payload);
   } else if (StompCommand.CONNECT.equals(getCommand())) {
     return "CONNECT"
         + (getUser() != null ? " user="******"")
         + appendSession();
   } else if (StompCommand.CONNECTED.equals(getCommand())) {
     return "CONNECTED heart-beat=" + Arrays.toString(getHeartbeat()) + appendSession();
   } else if (StompCommand.DISCONNECT.equals(getCommand())) {
     return "DISCONNECT"
         + (getReceipt() != null ? " receipt=" + getReceipt() : "")
         + appendSession();
   } else {
     return getDetailedLogMessage(payload);
   }
 }