소스 검색

support multiple topic subscribe.

master
Savorboard 7 년 전
부모
커밋
96ff6a5543
1개의 변경된 파일11개의 추가작업 그리고 10개의 파일을 삭제
  1. +11
    -10
      src/DotNetCore.CAP.RabbitMQ/RabbitMQConsumerClient.cs

+ 11
- 10
src/DotNetCore.CAP.RabbitMQ/RabbitMQConsumerClient.cs 파일 보기

@@ -1,4 +1,5 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
@@ -51,6 +52,16 @@ namespace DotNetCore.CAP.RabbitMQ
_channel.QueueDeclare(_queueName, exclusive: false);
}

public void Subscribe(IEnumerable<string> topics)
{
if (topics == null) throw new ArgumentNullException(nameof(topics));

foreach (var topic in topics)
{
_channel.QueueBind(_queueName, _exchageName, topic);
}
}

public void Listening(TimeSpan timeout, CancellationToken cancellationToken)
{
var consumer = new EventingBasicConsumer(_channel);
@@ -63,16 +74,6 @@ namespace DotNetCore.CAP.RabbitMQ
}
}

public void Subscribe(string topic)
{
_channel.QueueBind(_queueName, _exchageName, topic);
}

public void Subscribe(string topic, int partition)
{
_channel.QueueBind(_queueName, _exchageName, topic);
}

public void Commit()
{
_channel.BasicAck(_deliveryTag, false);


불러오는 중...
취소
저장