java.lang.Object
org.miaixz.bus.http.Stomp
WebSocket 的 STOMP 协议客户端
提供与 STOMP 服务器的连接、消息发送、订阅和消息确认功能。 支持主题(topic)和队列(queue)订阅,自动或手动消息确认。
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classSTOMP 头部类static classSTOMP 消息类 -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidack(Stomp.Message message) 确认收到消息connect()连接到 STOMP 服务器connect(List<Stomp.Header> headers) 使用指定头部连接到 STOMP 服务器void断开与 STOMP 服务器的连接static Stompover(CoverCall.Client task) 构建 STOMP 客户端(默认自动确认消息)static Stompover(CoverCall.Client task, boolean autoAck) 构建 STOMP 客户端queue(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅队列消息(带附加头部)queue(String destination, Callback<Stomp.Message> callback) 订阅队列消息voidsend(Stomp.Message message) 发送 STOMP 消息到服务器void发送消息到指定目标地址voidsetLegacyWhitespace(boolean legacyWhitespace) 设置是否使用传统空白字符格式setOnConnected(Callback<Stomp> onConnected) 设置连接成功回调setOnDisconnected(Callback<CoverCall.Close> onDisconnected) 设置连接断开回调setOnError(Callback<Stomp.Message> onError) 设置错误消息回调subscribe(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅指定地址的消息topic(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅主题消息(带附加头部)topic(String destination, Callback<Stomp.Message> callback) 订阅主题消息void取消队列订阅voidunsubscribe(String destination) 取消指定地址的订阅void取消主题订阅
-
Field Details
-
SUPPORTED_VERSIONS
支持的 STOMP 协议版本- See Also:
-
AUTO_ACK
自动确认模式- See Also:
-
CLIENT_ACK
客户端确认模式- See Also:
-
-
Method Details
-
over
构建 STOMP 客户端(默认自动确认消息)- Parameters:
task- 底层 WebSocket 客户端- Returns:
- STOMP 客户端实例
-
over
构建 STOMP 客户端- Parameters:
task- 底层 WebSocket 客户端autoAck- 是否自动确认消息- Returns:
- STOMP 客户端实例
-
connect
连接到 STOMP 服务器- Returns:
- 当前 STOMP 客户端实例
-
connect
使用指定头部连接到 STOMP 服务器- Parameters:
headers- STOMP 头部信息- Returns:
- 当前 STOMP 客户端实例
-
disconnect
public void disconnect()断开与 STOMP 服务器的连接 -
setOnConnected
设置连接成功回调- Parameters:
onConnected- 连接成功回调- Returns:
- 当前 STOMP 客户端实例
-
setOnDisconnected
设置连接断开回调- Parameters:
onDisconnected- 连接断开回调- Returns:
- 当前 STOMP 客户端实例
-
setOnError
设置错误消息回调- Parameters:
onError- 错误消息回调- Returns:
- 当前 STOMP 客户端实例
-
sendTo
发送消息到指定目标地址- Parameters:
destination- 目标地址data- 消息内容
-
send
发送 STOMP 消息到服务器- Parameters:
message- STOMP 消息- Throws:
IllegalArgumentException- 如果未调用 connect 方法
-
topic
订阅主题消息- Parameters:
destination- 主题地址callback- 消息回调- Returns:
- 当前 STOMP 客户端实例
-
topic
public Stomp topic(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅主题消息(带附加头部)- Parameters:
destination- 主题地址headers- 附加头部信息callback- 消息回调- Returns:
- 当前 STOMP 客户端实例
-
queue
订阅队列消息- Parameters:
destination- 队列地址callback- 消息回调- Returns:
- 当前 STOMP 客户端实例
-
queue
public Stomp queue(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅队列消息(带附加头部)- Parameters:
destination- 队列地址headers- 附加头部信息callback- 消息回调- Returns:
- 当前 STOMP 客户端实例
-
subscribe
public Stomp subscribe(String destination, List<Stomp.Header> headers, Callback<Stomp.Message> callback) 订阅指定地址的消息- Parameters:
destination- 订阅地址headers- 附加头部信息callback- 消息回调- Returns:
- 当前 STOMP 客户端实例
-
ack
确认收到消息- Parameters:
message- 服务器发送的消息
-
untopic
取消主题订阅- Parameters:
destination- 主题地址
-
unqueue
取消队列订阅- Parameters:
destination- 队列地址
-
unsubscribe
取消指定地址的订阅- Parameters:
destination- 订阅地址
-
setLegacyWhitespace
public void setLegacyWhitespace(boolean legacyWhitespace) 设置是否使用传统空白字符格式- Parameters:
legacyWhitespace- 是否启用传统格式
-