All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy