Exemple #1
0
        public void CreateReceiveEndpoint(string queueName, Action <IServiceBusReceiveEndpointConfigurator> configure)
        {
            var endpointConfigurator = new ServiceBusReceiveEndpointSpecification(_host, queueName);

            configure?.Invoke(endpointConfigurator);

            BusConfigurationResult.CompileResults(endpointConfigurator.Validate());

            endpointConfigurator.Apply(_builder);
        }
        public void CreateReceiveEndpoint(string queueName, Action<IServiceBusReceiveEndpointConfigurator> configure)
        {
            var endpointConfigurator = new ServiceBusReceiveEndpointSpecification(_host, queueName);

            configure?.Invoke(endpointConfigurator);

            BusConfigurationResult.CompileResults(endpointConfigurator.Validate());

            endpointConfigurator.Apply(_builder);
        }
        public void CreateReceiveEndpoint(string queueName, Action <IServiceBusReceiveEndpointConfigurator> configure)
        {
            var endpointTopologySpecification = _configuration.CreateNewConfiguration();

            var endpointConfigurator = new ServiceBusReceiveEndpointSpecification(_host, queueName, endpointTopologySpecification, _sendTransportProvider);

            configure?.Invoke(endpointConfigurator);

            BusConfigurationResult.CompileResults(endpointConfigurator.Validate());

            endpointConfigurator.Apply(_builder);
        }
        public ServiceBusBusBuilder(BusHostCollection<ServiceBusHost> hosts, IConsumePipeFactory consumePipeFactory, ISendPipeFactory sendPipeFactory,
            IPublishPipeFactory publishPipeFactory, ReceiveEndpointSettings settings)
            : base(consumePipeFactory, sendPipeFactory, publishPipeFactory, hosts)
        {
            if (hosts == null)
                throw new ArgumentNullException(nameof(hosts));

            _hosts = hosts;

            _busEndpointSpecification = new ServiceBusReceiveEndpointSpecification(_hosts[0], settings, ConsumePipe);

            foreach (var host in hosts.Hosts)
            {
                host.ReceiveEndpointFactory = new ServiceBusReceiveEndpointFactory(this, host);
                host.SubscriptionEndpointFactory = new ServiceBusSubscriptionEndpointFactory(this, host);
            }
        }
Exemple #5
0
        /// <summary>
        /// Creates a management endpoint which can be used by controllable filters on a bus intance
        /// </summary>
        /// <param name="configurator"></param>
        /// <param name="host">The service bus host</param>
        /// <param name="configure"></param>
        /// <returns></returns>
        public static IManagementEndpointConfigurator ManagementEndpoint(this IServiceBusBusFactoryConfigurator configurator,
                                                                         IServiceBusHost host, Action <IReceiveEndpointConfigurator> configure = null)
        {
            var queueName = host.GetTemporaryQueueName("manage-");

            var specification = new ServiceBusReceiveEndpointSpecification(host, queueName)
            {
                AutoDeleteOnIdle = TimeSpan.FromMinutes(5),
                EnableExpress    = true,
            };

            configure?.Invoke(specification);

            configurator.AddReceiveEndpointSpecification(specification);

            var managementEndpointConfigurator = new ManagementEndpointConfigurator(specification);

            return(managementEndpointConfigurator);
        }
        public ServiceBusBusBuilder(BusHostCollection <ServiceBusHost> hosts, ReceiveEndpointSettings settings,
                                    IServiceBusEndpointConfiguration configuration, ISendTransportProvider sendTransportProvider)
            : base(hosts, configuration)
        {
            if (hosts == null)
            {
                throw new ArgumentNullException(nameof(hosts));
            }

            var endpointTopologySpecification = configuration.CreateNewConfiguration(ConsumePipe);

            _busEndpointSpecification = new ServiceBusReceiveEndpointSpecification(hosts[0], settings, endpointTopologySpecification, sendTransportProvider);

            foreach (var host in hosts.Hosts)
            {
                host.ReceiveEndpointFactory      = new ServiceBusReceiveEndpointFactory(this, host, configuration, sendTransportProvider);
                host.SubscriptionEndpointFactory = new ServiceBusSubscriptionEndpointFactory(this, host, configuration, sendTransportProvider);
            }
        }
        public ServiceBusBusBuilder(BusHostCollection <ServiceBusHost> hosts, IConsumePipeFactory consumePipeFactory, ISendPipeFactory sendPipeFactory,
                                    IPublishPipeFactory publishPipeFactory, ReceiveEndpointSettings settings)
            : base(consumePipeFactory, sendPipeFactory, publishPipeFactory, hosts)
        {
            if (hosts == null)
            {
                throw new ArgumentNullException(nameof(hosts));
            }

            _hosts = hosts;

            _busEndpointSpecification = new ServiceBusReceiveEndpointSpecification(_hosts[0], settings, ConsumePipe);

            foreach (var host in hosts.Hosts)
            {
                host.ReceiveEndpointFactory      = new ServiceBusReceiveEndpointFactory(this, host);
                host.SubscriptionEndpointFactory = new ServiceBusSubscriptionEndpointFactory(this, host);
            }
        }
        /// <summary>
        /// Creates a management endpoint which can be used by controllable filters on a bus intance
        /// </summary>
        /// <param name="configurator"></param>
        /// <param name="host">The service bus host</param>
        /// <param name="configure"></param>
        /// <returns></returns>
        public static IManagementEndpointConfigurator ManagementEndpoint(this IServiceBusBusFactoryConfigurator configurator,
            IServiceBusHost host, Action<IReceiveEndpointConfigurator> configure = null)
        {
            var queueName = host.GetTemporaryQueueName("manage-");

            var specification = new ServiceBusReceiveEndpointSpecification(host, queueName)
            {
                AutoDeleteOnIdle = TimeSpan.FromMinutes(5),
                EnableExpress = true,
            };

            configure?.Invoke(specification);

            configurator.AddReceiveEndpointSpecification(specification);

            var managementEndpointConfigurator = new ManagementEndpointConfigurator(specification);

            return managementEndpointConfigurator;
        }