Class WebSocketMessage
- java.lang.Object
- org.springframework.web.reactive.socket.WebSocketMessage
public class WebSocketMessage extends Object
Representation of a WebSocket message.See static factory methods in
WebSocketSession
for creating messages with theDataBufferFactory
for the session.- Since:
- 5.0
- Author:
- Rossen Stoyanchev
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
WebSocketMessage.Type
WebSocket message types.
Constructor Summary
Constructors Constructor Description WebSocketMessage(WebSocketMessage.Type type, DataBuffer payload)
Constructor for a WebSocketMessage.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object other)
DataBuffer
getPayload()
Return the message payload.String
getPayloadAsText()
A variant ofgetPayloadAsText(Charset)
that usesUTF-8
for decoding the raw content to text.String
getPayloadAsText(Charset charset)
A shortcut for decoding the raw content of the message to text with the given character encoding.WebSocketMessage.Type
getType()
Return the message type (text, binary, etc).int
hashCode()
void
release()
Release the payloadDataBuffer
which is useful on runtimes (e.g.WebSocketMessage
retain()
Retain the data buffer for the message payload, which is useful on runtimes (e.g.String
toString()
Constructor Detail
WebSocketMessage
public WebSocketMessage(WebSocketMessage.Type type, DataBuffer payload)
Constructor for a WebSocketMessage.See static factory methods in
WebSocketSession
or alternatively useWebSocketSession.bufferFactory()
to create the payload and then invoke this constructor.
Method Detail
getType
public WebSocketMessage.Type getType()
Return the message type (text, binary, etc).
getPayload
public DataBuffer getPayload()
Return the message payload.
getPayloadAsText
public String getPayloadAsText()
A variant ofgetPayloadAsText(Charset)
that usesUTF-8
for decoding the raw content to text.
getPayloadAsText
public String getPayloadAsText(Charset charset)
A shortcut for decoding the raw content of the message to text with the given character encoding. This is useful for text WebSocket messages, or otherwise when the payload is expected to contain text.- Parameters:
charset
- the character encoding- Since:
- 5.0.5
retain
public WebSocketMessage retain()
Retain the data buffer for the message payload, which is useful on runtimes (e.g. Netty) with pooled buffers. A shortcut for:DataBuffer payload = message.getPayload(); DataBufferUtils.retain(payload);
- See Also:
DataBufferUtils.retain(DataBuffer)
release
public void release()
Release the payloadDataBuffer
which is useful on runtimes (e.g. Netty) with pooled buffers such as Netty. A shortcut for:DataBuffer payload = message.getPayload(); DataBufferUtils.release(payload);
- See Also:
DataBufferUtils.release(DataBuffer)