Example #1
0
        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));
        }
Example #2
0
        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();

			lock (_model)
				_model.QueueUnbind(queue.Name, exchange.Name, routingKeyOrFilter, null);
		}
Example #6
0
        public void UnBind(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter = null)
        {
            EnsureNotDisposed();

            var binding = new StubRabbitQueueBinding(exchange, queue, routingKeyOrFilter);

            _unbound.Add(binding);
        }
Example #7
0
        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 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 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));
 }
Example #14
0
        // End Stub helpers

        public StubRabbitQueueBinding(IRabbitExchange exchange, IRabbitQueue queue, string routingKeyOrFilter)
        {
            Exchange           = exchange;
            Queue              = queue;
            RoutingKeyOrFilter = 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;
 }