Beispiel #1
0
            protected override void ConfigureServiceBusBus(IServiceBusBusFactoryConfigurator configurator)
            {
                configurator.SubscriptionEndpoint <MessageA>("phatboyg_you_know_me", x =>
                {
                    x.Consumer <Consumer>();
                });

                configurator.SubscriptionEndpoint <MessageB>("phatboyg_you_know_me", x =>
                {
                    x.Consumer <Consumer>();
                });
            }
Beispiel #2
0
            protected override void ConfigureServiceBusBusHost(IServiceBusBusFactoryConfigurator configurator, IServiceBusHost host)
            {
                base.ConfigureServiceBusBusHost(configurator, host);

                configurator.SubscriptionEndpoint <MessageA>(host, "phatboyg_you_know_me", x =>
                {
                    x.Consumer <Consumer>();
                });

                configurator.SubscriptionEndpoint <MessageB>(host, "phatboyg_you_know_me", x =>
                {
                    x.Consumer <Consumer>();
                });
            }
 protected override void ConfigureServiceBusBus(IServiceBusBusFactoryConfigurator configurator)
 {
     configurator.SubscriptionEndpoint <CartRemoved>("second_queue", x =>
     {
         _cartRemoved = Handled <CartRemoved>(x);
     });
 }
Beispiel #4
0
            protected override void ConfigureServiceBusBus(IServiceBusBusFactoryConfigurator configurator)
            {
                configurator.SubscriptionEndpoint <MessageB>("phatboyg_you_know_me", x =>
                {
                    _handledB = Handler <MessageB>(x, async context =>
                    {
                        await context.Publish(new MessageA());

                        throw new IntentionalTestException("Oh, dang.");
                    });
                });

                configurator.SubscriptionEndpoint <MessageC>("no_handlers", x =>
                {
                });
            }
Beispiel #5
0
 protected override void ConfigureServiceBusBus(IServiceBusBusFactoryConfigurator configurator)
 {
     configurator.SubscriptionEndpoint <MessageB>("phatboyg_you_know_me", x =>
     {
         _handledB = Handled <MessageB>(x);
     });
 }
Beispiel #6
0
            protected override void ConfigureBusHost(IServiceBusBusFactoryConfigurator configurator, IServiceBusHost host)
            {
                base.ConfigureBusHost(configurator, host);

                configurator.SubscriptionEndpoint <MessageB>(host, "phatboyg_you_know_me", x =>
                {
                    _handledB = Handled <MessageB>(x);
                });
            }
Beispiel #7
0
        static void ConfigureBusEndpoints(IServiceBusBusFactoryConfigurator cfg, IServiceProvider provider, IServiceBusHost host)
        {
            const string subsriberName = "AnotherSubscriber";

            cfg.SubscriptionEndpoint <AnotherThingHappened>(host, subsriberName, configurator =>
            {
                configurator.Handler <AnotherThingHappened>(context =>
                {
                    Console.WriteLine(context.Message.AnotherThingType);
                    if (Random.NextDouble() < 0.1)
                    {
                        throw new Exception("Oups, I failed :(");
                    }
                    return(Task.CompletedTask);
                });
            });

            cfg.SubscriptionEndpoint <ObjectCreatedA>(host, subsriberName, configurator =>
            {
                configurator.Consumer <ObjectACreatedEventHandler>();
            });

            cfg.ReceiveEndpoint(host, queueName: "AnotherSubscirber2", configure: configurator =>
            {
                configurator.Handler <ObjectCreatedB>(async context =>
                {
                    Console.WriteLine("Another subscirber, object b created");
                    await context.SchedulePublish <ScheduledCommand>(TimeSpan.FromSeconds(30), new ScheduledCommandImpl
                    {
                        ExecutedIn = 30, IsReallyScheduled = true
                    });

                    ChangeCaseCommand changeCase = new ChangeCaseCommandImpl
                    {
                        IsScheduled = true,
                        Text        = "Hello world"
                    };

                    await context.ScheduleSendConventional(TimeSpan.FromSeconds(15), changeCase);
                });
            });

            cfg.CreateConventionalCommandHandlerEndpoint <DoAnotherThingCommandHandler, DoAnotherThingCommand>(provider);
        }
        /// <inheritdoc />
        public override void SetEndpoint(IServiceBusBusFactoryConfigurator busCfg, IServiceBusHost host)
        => busCfg.SubscriptionEndpoint <TMessage>(host, Name, endpointConfig =>
        {
            _configurator?.Invoke(endpointConfig);

            foreach (Action <IServiceBusSubscriptionEndpointConfigurator> consumerConfig in _consumers)
            {
                consumerConfig?.Invoke(endpointConfig);
            }
        });
Beispiel #9
0
            protected override void ConfigureServiceBusBusHost(IServiceBusBusFactoryConfigurator configurator, IServiceBusHost host)
            {
                base.ConfigureServiceBusBus(configurator);

                configurator.UseServiceBusMessageScheduler();

                configurator.SubscriptionEndpoint <CartRemoved>(host, "second_queue", x =>
                {
                    _cartRemoved = Handled <CartRemoved>(x);
                });
            }
Beispiel #10
0
        protected override void ConfigureServiceBusBus(IServiceBusBusFactoryConfigurator configurator)
        {
            configurator.SubscriptionEndpoint <ClientUpdated>("client-update-27", x =>
            {
                x.PrefetchCount = 1;

                x.Rule = new RuleDescription("Only27", new SqlFilter("ClientId = 27"));

                _handled = Handled <ClientUpdated>(x);
            });
        }
        protected override void ConfigureServiceBusBusHost(IServiceBusBusFactoryConfigurator configurator, IServiceBusHost host)
        {
            configurator.Send <PartitionedMessage>(x =>
            {
                x.UsePartitionKeyFormatter(p => p.Message.CorrelationId.ToString("N"));
            });

            configurator.Publish <PartitionedMessage>(x =>
            {
                x.EnablePartitioning = true;
                //x.EnableExpress = true;
            });

            configurator.SubscriptionEndpoint <PartitionedMessage>(host, "part-sub", x =>
            {
                _otherHandled = Handled <PartitionedMessage>(x);
            });
        }