package com.mortals.xhx.base.system.message;

import com.mortals.xhx.busiz.req.DeviceReq;
import com.mortals.xhx.busiz.rsp.ApiResp;
import com.mortals.xhx.queue.TbQueueCallback;
import com.mortals.xhx.queue.TbQueueMsgHeaders;
import com.mortals.xhx.queue.TopicPartitionInfo;
import org.springframework.amqp.rabbit.core.RabbitTemplate;


public interface RabbitMessageService extends RabbitTemplate.ConfirmCallback, RabbitTemplate.ReturnCallback  {


    /**
     * 发送消息
     *
     * @author: zxfei
     * @date: 2022/9/2 11:31
     */
    void sendMsg(String exchange, String routingKey, String message);

    /**
     * 新增队列并绑定交换机与路由
     *
     * @param exchange
     * @param routingKey
     * @param queue
     */
    void queueAddAndBinds(String exchange, String routingKey, String queue);


    /**
     * 删除队列
     *
     * @param queue
     */
    Boolean queueDelete(String queue);

}