Exemplo n.º 1
0
        public override Task Start()
        {
            foreach (var diagnosticSection in diagnostics)
            {
                settings.AddStartupDiagnosticsSection(diagnosticSection.Key, diagnosticSection.Value);
            }

            if (delayedDeliverySettings == null)
            {
                settings.AddStartupDiagnosticsSection("NServiceBus.Transport.SqlServer.DelayedDelivery", new
                {
                    Native = false
                });
                return(Task.FromResult(0));
            }

            settings.AddStartupDiagnosticsSection("NServiceBus.Transport.SqlServer.DelayedDelivery", new
            {
                Native = true,
                delayedDeliverySettings.Suffix,
                delayedDeliverySettings.Interval,
                BatchSize     = delayedDeliverySettings.MatureBatchSize,
                TimoutManager = delayedDeliverySettings.TimeoutManagerDisabled ? "disabled" : "enabled"
            });

            var delayedMessageTable = CreateDelayedMessageTable();

            delayedMessageHandler = new DelayedMessageHandler(delayedMessageTable, CreateConnectionFactory(), delayedDeliverySettings.Interval, delayedDeliverySettings.MatureBatchSize);
            delayedMessageHandler.Start();
            return(Task.FromResult(0));
        }
        public override Task Start()
        {
            if (delayedDeliverySettings == null)
            {
                return(Task.FromResult(0));
            }
            var delayedMessageTable = CreateDelayedMessageTable();

            delayedMessageHandler = new DelayedMessageHandler(delayedMessageTable, CreateConnectionFactory(), delayedDeliverySettings.Interval, delayedDeliverySettings.MatureBatchSize);
            delayedMessageHandler.Start();
            return(Task.FromResult(0));
        }