Parcourir la source

support multiple topic subscribe.

master
Savorboard il y a 7 ans
Parent
révision
96ff6a5543
1 fichiers modifiés avec 11 ajouts et 10 suppressions
  1. +11
    -10
      src/DotNetCore.CAP.RabbitMQ/RabbitMQConsumerClient.cs

+ 11
- 10
src/DotNetCore.CAP.RabbitMQ/RabbitMQConsumerClient.cs Voir le fichier

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


Chargement…
Annuler
Enregistrer