|
|
|
@ -230,11 +230,11 @@ public class StompSubProtocolHandler implements SubProtocolHandler, ApplicationE |
|
|
|
List<Message<byte[]>> messages; |
|
|
|
List<Message<byte[]>> messages; |
|
|
|
try { |
|
|
|
try { |
|
|
|
ByteBuffer byteBuffer; |
|
|
|
ByteBuffer byteBuffer; |
|
|
|
if (webSocketMessage instanceof TextMessage) { |
|
|
|
if (webSocketMessage instanceof TextMessage textMessage) { |
|
|
|
byteBuffer = ByteBuffer.wrap(((TextMessage) webSocketMessage).asBytes()); |
|
|
|
byteBuffer = ByteBuffer.wrap(textMessage.asBytes()); |
|
|
|
} |
|
|
|
} |
|
|
|
else if (webSocketMessage instanceof BinaryMessage) { |
|
|
|
else if (webSocketMessage instanceof BinaryMessage binaryMessage) { |
|
|
|
byteBuffer = ((BinaryMessage) webSocketMessage).getPayload(); |
|
|
|
byteBuffer = binaryMessage.getPayload(); |
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
else { |
|
|
|
return; |
|
|
|
return; |
|
|
|
@ -398,8 +398,8 @@ public class StompSubProtocolHandler implements SubProtocolHandler, ApplicationE |
|
|
|
return this.immutableMessageInterceptorPresent; |
|
|
|
return this.immutableMessageInterceptorPresent; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (channel instanceof AbstractMessageChannel) { |
|
|
|
if (channel instanceof AbstractMessageChannel abstractMessageChannel) { |
|
|
|
for (ChannelInterceptor interceptor : ((AbstractMessageChannel) channel).getInterceptors()) { |
|
|
|
for (ChannelInterceptor interceptor : abstractMessageChannel.getInterceptors()) { |
|
|
|
if (interceptor instanceof ImmutableMessageChannelInterceptor) { |
|
|
|
if (interceptor instanceof ImmutableMessageChannelInterceptor) { |
|
|
|
this.immutableMessageInterceptorPresent = true; |
|
|
|
this.immutableMessageInterceptorPresent = true; |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
@ -520,8 +520,8 @@ public class StompSubProtocolHandler implements SubProtocolHandler, ApplicationE |
|
|
|
|
|
|
|
|
|
|
|
private StompHeaderAccessor getStompHeaderAccessor(Message<?> message) { |
|
|
|
private StompHeaderAccessor getStompHeaderAccessor(Message<?> message) { |
|
|
|
MessageHeaderAccessor accessor = MessageHeaderAccessor.getAccessor(message, MessageHeaderAccessor.class); |
|
|
|
MessageHeaderAccessor accessor = MessageHeaderAccessor.getAccessor(message, MessageHeaderAccessor.class); |
|
|
|
if (accessor instanceof StompHeaderAccessor) { |
|
|
|
if (accessor instanceof StompHeaderAccessor stompHeaderAccessor) { |
|
|
|
return (StompHeaderAccessor) accessor; |
|
|
|
return stompHeaderAccessor; |
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
else { |
|
|
|
StompHeaderAccessor stompAccessor = StompHeaderAccessor.wrap(message); |
|
|
|
StompHeaderAccessor stompAccessor = StompHeaderAccessor.wrap(message); |
|
|
|
@ -614,8 +614,8 @@ public class StompSubProtocolHandler implements SubProtocolHandler, ApplicationE |
|
|
|
long[] heartbeat = accessor.getHeartbeat(); |
|
|
|
long[] heartbeat = accessor.getHeartbeat(); |
|
|
|
if (heartbeat[1] > 0) { |
|
|
|
if (heartbeat[1] > 0) { |
|
|
|
session = WebSocketSessionDecorator.unwrap(session); |
|
|
|
session = WebSocketSessionDecorator.unwrap(session); |
|
|
|
if (session instanceof SockJsSession) { |
|
|
|
if (session instanceof SockJsSession sockJsSession) { |
|
|
|
((SockJsSession) session).disableHeartbeat(); |
|
|
|
sockJsSession.disableHeartbeat(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|