public void BindToExchange(string exchangeName, Action <IExchangeBindingConfigurator> configure = null) { var configurator = new ExchangeBindingConfigurator(exchangeName, RabbitMQ.Client.ExchangeType.Fanout, Durable, AutoDelete, ""); configure?.Invoke(configurator); _exchangeBindings.Add(new ExchangeBindingPublishTopologySpecification(configurator)); }
public ExchangeBindingPublishTopologySpecification(ExchangeBindingConfigurator configurator) { ExchangeName = configurator.ExchangeName; _exchangeType = configurator.ExchangeType; _durable = configurator.Durable; _autoDelete = configurator.AutoDelete; _exchangeArguments = configurator.ExchangeArguments; _routingKey = configurator.RoutingKey; _bindingArguments = configurator.BindingArguments; }
public void Bind(string exchangeName, Action <IExchangeBindingConfigurator> configure = null) { var exchangeType = ExchangeTypeSelector.DefaultExchangeType; var binding = new ExchangeBindingConfigurator(exchangeName, exchangeType, true, false, ""); configure?.Invoke(binding); var specification = new ExchangeBindingConsumeTopologySpecification(binding); _specifications.Add(specification); }
public void Bind(Action <IExchangeBindingConfigurator> configure = null) { if (!IsBindableMessageType) { _specifications.Add(new InvalidRabbitMqConsumeTopologySpecification(TypeMetadataCache <TMessage> .ShortName, "Is not a bindable message type")); return; } var binding = new ExchangeBindingConfigurator(_publishTopology.Exchange, ""); configure?.Invoke(binding); var specification = new ExchangeBindingConsumeTopologySpecification(binding); _specifications.Add(specification); }