Exemplo n.º 1
0
        public void DirectBindingWithQueueName()
        {
            var directExchange = new DirectExchange("d");
            var binding        = BindingBuilder.Bind(queue).To(directExchange).WithQueueName();

            Assert.NotNull(binding);
            Assert.Equal(directExchange.ExchangeName, binding.Exchange);
            Assert.Equal(Binding.DestinationType.QUEUE, binding.Type);
            Assert.Equal(queue.QueueName, binding.Destination);
            Assert.Equal(queue.QueueName, binding.RoutingKey);
        }
Exemplo n.º 2
0
        public void ExchangeBinding()
        {
            var directExchange = new DirectExchange("d");
            var fanoutExchange = new FanoutExchange("f");
            var binding        = BindingBuilder.Bind(directExchange).To(fanoutExchange);

            Assert.NotNull(binding);
            Assert.Equal(fanoutExchange.ExchangeName, binding.Exchange);
            Assert.Equal(Binding.DestinationType.EXCHANGE, binding.Type);
            Assert.Equal(directExchange.ExchangeName, binding.Destination);
            Assert.Equal(string.Empty, binding.RoutingKey);
        }
Exemplo n.º 3
0
        public AbstractExchange Build()
        {
            AbstractExchange exchange;

            if (ExchangeTypes.DIRECT.Equals(_type))
            {
                exchange = new DirectExchange(_name, _durable, _autoDelete, Arguments);
            }
            else if (ExchangeTypes.TOPIC.Equals(_type))
            {
                exchange = new TopicExchange(_name, _durable, _autoDelete, Arguments);
            }
            else if (ExchangeTypes.FANOUT.Equals(_type))
            {
                exchange = new FanoutExchange(_name, _durable, _autoDelete, Arguments);
            }
            else if (ExchangeTypes.HEADERS.Equals(_type))
            {
                exchange = new HeadersExchange(_name, _durable, _autoDelete, Arguments);
            }
            else
            {
                exchange = new CustomExchange(_name, _type, _durable, _autoDelete, Arguments);
            }

            exchange.IsInternal = _internal;
            exchange.IsDelayed  = _delayed;
            exchange.IgnoreDeclarationExceptions = _ignoreDeclarationExceptions;
            exchange.Declare = _declare;
            if (_declaringAdmins != null && _declaringAdmins.Count > 0)
            {
                exchange.SetAdminsThatShouldDeclare(_declaringAdmins.ToArray());
            }

            return(exchange);
        }
Exemplo n.º 4
0
 public DirectExchangeRoutingKeyConfigurer To(DirectExchange exchange)
 {
     return(new DirectExchangeRoutingKeyConfigurer(this, exchange));
 }
Exemplo n.º 5
0
 public DirectExchangeRoutingKeyConfigurer(DestinationConfigurer destination, DirectExchange exchange)
     : base(destination, exchange.ExchangeName)
 {
 }