public IRabbitQueueBinding BindNoWait(IRabbitQueue queue, string routingKeyOrFilter) { lock (_model) _model.QueueBindNoWait(queue.Name, this.Name, routingKeyOrFilter, null); return(new RabbitQueueBinding(_model, queue.Name, this.Name, routingKeyOrFilter)); }
public IRabbitQueueBinding BindNoWait(IRabbitQueue queue, string routingKeyOrFilter) { var binding = new StubRabbitQueueBinding(this, queue, routingKeyOrFilter); _bindingsNoWait.Add(binding); return(binding); }
public void UnBind(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter = null) { EnsureNotDisposed(); lock (_model) _model.QueueUnbind(queue.Name, exchange.Name, routingKeyOrFilter, null); }
public static Subscription Respond <TRequest, TResponse>(this IRabbitQueue source, Func <MessageEnvelope <TRequest>, IMessageAck, TResponse> onRespond, ConsumerOptions options = null) { Argument.NotNull(onRespond, "onRespond"); options = options ?? ConsumerOptions.DefaultForRespond; options.ShouldSerializeExceptions = true; var serializer = options.Serializer ?? source.DefaultSerializer; var typedOnRespond = new Func <MessageEnvelope, IMessageAck, MessageEnvelope>((envelope, ack) => { var typedMessage = serializer.TypedDeserialize <TRequest>(envelope.Body, envelope.Properties); var replyInstance = onRespond(new MessageEnvelope <TRequest>(envelope, typedMessage), ack); var replyProperties = new BasicProperties(); var replyData = serializer.TypedSerialize(replyInstance, replyProperties); return(new MessageEnvelope(replyProperties, replyData)); }); return(source.RespondRaw(typedOnRespond, options)); }
public void UnBind(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter = null) { EnsureNotDisposed(); var binding = new StubRabbitQueueBinding(exchange, queue, routingKeyOrFilter); _unbound.Add(binding); }
public IRabbitQueueBinding BindNoWait(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter) { EnsureNotDisposed(); var binding = new StubRabbitQueueBinding(exchange, queue, routingKeyOrFilter); _boundNoWait.Add(binding); return(binding); }
public static Subscription Consume <T>(this IRabbitQueue source, Action <MessageEnvelope <T>, IMessageAck> onReceived, ConsumerOptions options = null) { Argument.NotNull(onReceived, "onReceived"); options = options ?? ConsumerOptions.Default; var serializer = options.Serializer ?? source.DefaultSerializer; var typedReceived = new Action <MessageEnvelope, IMessageAck>((envelope, ack) => { var message = serializer.TypedDeserialize <T>(envelope.Body, envelope.Properties); onReceived(new MessageEnvelope <T>(envelope, message), ack); }); return(source.ConsumeRaw(typedReceived, options)); }
// End Stub helpers public StubRabbitQueueBinding(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter) { Exchange = exchange; Queue = queue; RoutingKeyOrFilter = routingKeyOrFilter; }
public IRabbitQueueBinding BindNoWait(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter) { EnsureNotDisposed(); var binding = new StubRabbitQueueBinding(exchange, queue, routingKeyOrFilter); _boundNoWait.Add(binding); return binding; }
public IRabbitQueueBinding BindNoWait(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter) { return (this as IRabbitChannelInternal).BindInternal(true, queue.Name, exchange.Name, routingKeyOrFilter); }
public IRabbitQueueBinding BindNoWait(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter) { return((this as IRabbitChannelInternal).BindInternal(true, queue.Name, exchange.Name, routingKeyOrFilter)); }
public IRabbitQueueBinding Bind(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter = null) { return BindInternal(false, queue.Name, exchange.Name, routingKeyOrFilter); }
public ExceptionHandlerMiddleware(RequestDelegate next, IRabbitQueue <ILog> rabbitQueue) { _next = next; _rabbitQueue = rabbitQueue; }