Interface IMqttSessionManager
-
- All Known Implementing Classes:
InMemoryMqttSessionManager
public interface IMqttSessionManagersession 管理,不封装 MqttSession 实体,方便 redis 等集群处理- Author:
- L.cm
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanactive(String clientId)激活 session,标记 expire 的 session 为永久voidaddPendingPublish(String clientId, int messageId, MqttPendingPublish pendingPublish)添加发布过程存储voidaddPendingQos2Publish(String clientId, int messageId, MqttPendingQos2Publish pendingQos2Publish)添加发布过程存储voidaddSubscribe(String topicFilter, String clientId, int mqttQoS)添加订阅存储voidclean()清理booleanexpire(String clientId, int sessionExpirySeconds)标记 session 超时时间intgetMessageId(String clientId)生成消息 IdMqttPendingPublishgetPendingPublish(String clientId, int messageId)获取发布过程存储MqttPendingQos2PublishgetPendingQos2Publish(String clientId, int messageId)获取发布过程存储booleanhasSession(String clientId)判断是否存在 sessionvoidremove(String clientId)清除 sessionvoidremovePendingPublish(String clientId, int messageId)删除发布过程中的存储voidremovePendingQos2Publish(String clientId, int messageId)删除发布过程中的存储voidremoveSubscribe(String topicFilter, String clientId)删除订阅List<br.com.anteros.mqtt.core.server.model.Subscribe>searchSubscribe(String topicName)查找订阅信息IntegersearchSubscribe(String topicName, String clientId)查找订阅 qos 信息
-
-
-
Method Detail
-
addSubscribe
void addSubscribe(String topicFilter, String clientId, int mqttQoS)
添加订阅存储- Parameters:
topicFilter- topicFilterclientId- 客户端 IdmqttQoS- MqttQoS
-
removeSubscribe
void removeSubscribe(String topicFilter, String clientId)
删除订阅- Parameters:
topicFilter- topicFilterclientId- 客户端 Id
-
searchSubscribe
Integer searchSubscribe(String topicName, String clientId)
查找订阅 qos 信息- Parameters:
topicName- topicNameclientId- 客户端 Id- Returns:
- 订阅存储列表
-
searchSubscribe
List<br.com.anteros.mqtt.core.server.model.Subscribe> searchSubscribe(String topicName)
查找订阅信息- Parameters:
topicName- topicName- Returns:
- 订阅存储列表
-
addPendingPublish
void addPendingPublish(String clientId, int messageId, MqttPendingPublish pendingPublish)
添加发布过程存储- Parameters:
clientId- clientIdmessageId- messageIdpendingPublish- MqttPendingPublish
-
getPendingPublish
MqttPendingPublish getPendingPublish(String clientId, int messageId)
获取发布过程存储- Parameters:
clientId- clientIdmessageId- messageId- Returns:
- MqttPendingPublish
-
removePendingPublish
void removePendingPublish(String clientId, int messageId)
删除发布过程中的存储- Parameters:
clientId- clientIdmessageId- messageId
-
addPendingQos2Publish
void addPendingQos2Publish(String clientId, int messageId, MqttPendingQos2Publish pendingQos2Publish)
添加发布过程存储- Parameters:
clientId- clientIdmessageId- messageIdpendingQos2Publish- MqttPendingQos2Publish
-
getPendingQos2Publish
MqttPendingQos2Publish getPendingQos2Publish(String clientId, int messageId)
获取发布过程存储- Parameters:
clientId- clientIdmessageId- messageId- Returns:
- MqttPendingQos2Publish
-
removePendingQos2Publish
void removePendingQos2Publish(String clientId, int messageId)
删除发布过程中的存储- Parameters:
clientId- clientIdmessageId- messageId
-
getMessageId
int getMessageId(String clientId)
生成消息 Id- Parameters:
clientId- clientId- Returns:
- messageId
-
hasSession
boolean hasSession(String clientId)
判断是否存在 session- Parameters:
clientId- clientId- Returns:
- 是否存在 session
-
expire
boolean expire(String clientId, int sessionExpirySeconds)
标记 session 超时时间- Parameters:
clientId- clientIdsessionExpirySeconds- sessionExpirySeconds- Returns:
- 是否成功
-
active
boolean active(String clientId)
激活 session,标记 expire 的 session 为永久- Parameters:
clientId- clientId- Returns:
- 是否成功
-
remove
void remove(String clientId)
清除 session- Parameters:
clientId- clientId
-
clean
void clean()
清理
-
-