com.github.kaizen4j.redis.message.RedisMessageTemplate Maven / Gradle / Ivy
The newest version!
package com.github.kaizen4j.redis.message;
import com.github.kaizen4j.redis.connection.DelayMessage;
import org.springframework.data.redis.core.RedisTemplate;
/**
* 消息模版接口
*
* @author liuguowen
*/
public interface RedisMessageTemplate {
/**
* 发布延迟消息
*
* @param delayMessage 消息对象
* @return 成功返回 true
*/
boolean publishMessage(DelayMessage delayMessage);
/**
* 发布订阅消息
*
* @param topic 消息主题
* @param message 消息体
* @return 成功返回 true
*/
boolean publishMessage(String topic, String message);
/**
* 发送延迟消息 acknowledge 通知
*
* @param delayMessage 消息对象
* @return 成功返回 true
*/
boolean acknowledge(DelayMessage delayMessage);
/**
* 送延迟消息 acknowledge 通知
*
* @param topic 消息主题
* @param messageId 消息id
* @return 成功返回 true
*/
boolean acknowledge(String topic, String messageId);
/**
* 获取消息体内容
*
* @param messageId 延迟消息id
* @return String
*/
String getMessageBody(String messageId);
/**
* 获取消息 ACK 次数
*
* @param messageId 延迟消息 id
* @return ACK 次数
*/
long getMessageAck(String messageId);
/**
* 移除消息
*
* @param topic 主题
* @param messageId 延迟消息id
* @return 成功返回 true
*/
boolean removeMessage(String topic, String messageId);
/**
* 获取 RedisTemplate
*
* @return RedisTemplate
*/
RedisTemplate getRedisTemplate();
}