|
|
@@ -3,14 +3,15 @@ package rabbitmq
|
|
3
|
3
|
import (
|
|
4
|
4
|
"fmt"
|
|
5
|
5
|
|
|
6
|
|
- "git.x2erp.com/qdy/go-base/model/request"
|
|
|
6
|
+ "git.x2erp.com/qdy/go-base/model/request/mqreq"
|
|
|
7
|
+ mq "git.x2erp.com/qdy/go-base/model/request/mqreq"
|
|
7
|
8
|
"git.x2erp.com/qdy/go-base/model/response"
|
|
8
|
9
|
amqp "github.com/streadway/amqp"
|
|
9
|
10
|
)
|
|
10
|
11
|
|
|
11
|
12
|
// MessageHandler 消息处理器接口
|
|
12
|
13
|
type MessageHandler interface {
|
|
13
|
|
- Process(ueueRequest *request.QueueRequest, body []byte) response.QueryResult[interface{}]
|
|
|
14
|
+ Process(ueueRequest *mq.QueueRequest, body []byte) response.QueryResult[interface{}]
|
|
14
|
15
|
}
|
|
15
|
16
|
|
|
16
|
17
|
// Consumer 消费者结构体
|
|
|
@@ -18,12 +19,12 @@ type Consumer struct {
|
|
18
|
19
|
Channel *amqp.Channel
|
|
19
|
20
|
QueueName string
|
|
20
|
21
|
Handler MessageHandler
|
|
21
|
|
- QueueRequest *request.QueueRequest
|
|
|
22
|
+ QueueRequest *mq.QueueRequest
|
|
22
|
23
|
}
|
|
23
|
24
|
|
|
24
|
25
|
// CreateConsumer 创建消费者
|
|
25
|
26
|
// 返回Consumer对象,创建后自动开始消费
|
|
26
|
|
-func (f *RabbitMQFactory) CreateConsumer(queueRequest *request.QueueRequest, consumerID string, handler MessageHandler) (*Consumer, error) {
|
|
|
27
|
+func (f *RabbitMQFactory) CreateConsumer(queueRequest *mqreq.QueueRequest, consumerID string, handler MessageHandler) (*Consumer, error) {
|
|
27
|
28
|
// 生成唯一的通道名称
|
|
28
|
29
|
channelName := fmt.Sprintf("%s_%s", queueRequest.QueueName, consumerID)
|
|
29
|
30
|
|