/*
 * Copyright (c) 2023 codvision.com All Rights Reserved.
 */

package com.codvision.mqcore.service;

import com.codvision.mqcore.bean.CommonMessage;

/**
 * 消息队列发送接口
 *
 * @author lingee
 * @date 2023/8/22
 */
public interface MQSender {

    /**
     * 根据公共消息体发送消息
     *
     * @param queueName     队列名称
     * @param commonMessage 公共消息
     */
    void sendMessage(String queueName, CommonMessage commonMessage);

    /**
     * 根据消息字符串发送消息
     *
     * @param queueName 队列名称
     * @param message   消息
     */
    void sendMessage(String queueName, Object message);

    /**
     * 发送延时消息
     *
     * @param queueName    队列名称
     * @param message      消息
     * @param delaySeconds 延时时长（秒）
     */
    void sendDelayMessage(String queueName, Object message, long delaySeconds);
}
