protected internal RabbitQueue(string queueName, QueueDeclareOptions options, object args, IExchange exchange, IModel channel) { QueueName = queueName; Options = options; Exchange = exchange; _channel = channel; _args = args == null ? new ReadOnlyDictionary <string, object>(new Dictionary <string, object>()) : new ReadOnlyDictionary <string, object>(args.Map()); }
public async Task <QueueDeclareResult> QueueDeclareAsync(string queueName, QueueDeclareOptions options, object arguments) { try { return(await Task.Run(() => { var resp = _channel.QueueDeclare(queueName, options.Durable, options.Exclusive, options.AutoDelete, arguments == null ? new Dictionary <string, object>() : arguments.Map()); var queue = new RabbitQueue(queueName, options, arguments, this, _channel); return QueueDeclareResult.Success(queue); })); } catch (Exception e) { return(QueueDeclareResult.Failed(e)); } }
public QueueDeclareMiddleware(ITopologyProvider topology, ILogger <Pipe.Middleware.QueueDeclareMiddleware> logger, QueueDeclareOptions options = null) : base(topology, logger, options) { }
public QueueDeclareMiddleware(ITopologyProvider topology, QueueDeclareOptions options = null) : base(topology, options) { }