コード例 #1
0
 protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     Handler<PingMessage>(configurator, async context =>
     {
         throw new SerializationException("This is fine, forcing death");
     });
 }
コード例 #2
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _consumer = new OneMessageConsumer(GetTask<MessageA>());


            configurator.Consumer(() => _consumer);
        }
コード例 #3
0
 protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Handler<PingMessage>(async context =>
     {
         await context.RespondAsync(new PongMessage(context.Message.CorrelationId));
     });
 }
コード例 #4
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _bookingRequestSagaRepository = new InMemorySagaRepository<BookingRequestState>();
            _bookingRequestStateMachine = new BookingRequestStateMachine();

            configurator.StateMachineSaga(_bookingRequestStateMachine, _bookingRequestSagaRepository);
        }
コード例 #5
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _count = 0;

            _received = GetTask<ConsumeContext<PingMessage>>();

            configurator.Handler<PingMessage>(async context =>
            {
                if (_timer == null)
                    _timer = Stopwatch.StartNew();

                if (_count++ < 2)
                {
                    Console.WriteLine("{0} now is not a good time", DateTime.UtcNow);
                    throw new IntentionalTestException("I'm so not ready for this jelly.");
                }

                _timer.Stop();

                Console.WriteLine("{0} okay, now is good (retried {1} times)", DateTime.UtcNow, context.Headers.Get("MT-Redelivery-Count", default(int?)));

                // okay, ready.
                _receivedTimeSpan = _timer.Elapsed;
                _received.TrySetResult(context);
            }, x => x.UseScheduledRedelivery(Retry.Intervals(1000,2000)));
        }
コード例 #6
0
ファイル: Factory_Specs.cs プロジェクト: kotvisbj/MassTransit
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _observer = GetObserver<A>();

            configurator.Observer(_observer);

            configurator.Observer(Observer.Create<ConsumeContext<A>>(m => Console.WriteLine(m.Message.Name)));
        }
コード例 #7
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _completed = Handled<RoutingSlipCompleted>(configurator);

            var fetchAvatarActivity = GetActivityContext<FetchAvatarActivity>();

            _activityCompleted = Handled<RoutingSlipActivityCompleted>(configurator, context => context.Message.ActivityName.Equals(fetchAvatarActivity.Name));
        }
コード例 #8
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _observer = new ObservableObserver<ConsumeContext<A>>();

            _observer.GroupBy(x => x.Message.Name).Subscribe(value => Console.WriteLine("Key: {0}", value.Key));

            configurator.Observer(_observer);
        }
コード例 #9
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            // TODO would be nice to support serialization per receiving endpoint

            // configurator.UseJsonSerializer();

            _requestReceived = Handler<A>(configurator, context => context.RespondAsync(new B()));
        }
コード例 #10
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            var testActivity = GetActivityContext<TestActivity>();

            _handled = Handled<RoutingSlipActivityCompleted>(configurator, x => x.Message.ActivityName == testActivity.Name);
        }
コード例 #11
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _consumer = new OneMessageConsumer(GetTask<MessageA>());

            object instance = _consumer;

            configurator.Instance(instance);
        }
コード例 #12
0
 protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     long value = 0;
     configurator.Handler<PingMessage>(async context =>
     {
         if (Interlocked.Increment(ref value) == 1000)
             _completed.TrySetResult(true);
     });
 }
コード例 #13
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            configurator.Handler<JToken>(async context =>
            {
                await Console.Out.WriteLineAsync($"Received the token! {context.Message}");

                _completed.TrySetResult(context.Message);
            });
        }
コード例 #14
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _first = Handler<FirstMessage>(configurator, async context =>
            {
                await context.ScheduleMessage(DateTime.Now, new SecondMessage());
            });

            _second = Handled<SecondMessage>(configurator);
        }
コード例 #15
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _count = 0;
            configurator.Handler<Interval>(async context =>
            {
                Interlocked.Increment(ref _count);
            });

            _done = Handled<Done>(configurator);
        }
コード例 #16
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            var sagaRepository = new InMemorySagaRepository<RegisterUserSaga>();
            configurator.Saga(sagaRepository);

            configurator.Handler<SendUserVerificationEmail>(async x =>
            {
                await Bus.Publish(new UserVerificationEmailSent(x.Message.CorrelationId, x.Message.Email));
            });
        }
コード例 #17
0
ファイル: Retry_Specs.cs プロジェクト: jsmale/MassTransit
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            configurator.UseRetry(Retry.None);

            Handler<PingMessage>(configurator, async context =>
            {
                _attempts++;
                throw new IntentionalTestException();
            });
        }
コード例 #18
0
ファイル: TramJob_Specs.cs プロジェクト: kotvisbj/MassTransit
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            configurator.Turnout<ProcessFile>(_busFactoryConfigurator, x =>
            {
                x.SuperviseInterval = TimeSpan.FromSeconds(1);
                x.SetJobFactory(async context => await Task.Delay(context.Message.Size));
            });
        }
コード例 #19
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            configurator.UseBsonSerializer();

            _handled = Handler<PingMessage>(configurator, async context =>
            {
                await context.RespondAsync(new PongMessage(context.Message.CorrelationId));
            });
        }
コード例 #20
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            configurator.UseTransform<A>(t =>
            {
                t.Set(x => x.Second, context => "World");
            });

            _received = Handled<A>(configurator);
        }
コード例 #21
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _commandHandler = Handler<SecureCommand>(configurator, async context =>
            {
                ConsumeContext<UserCredentials> credentials;
                if (context.TryGetMessage(out credentials))
                    _credentials.SetResult(credentials.Message);
            });

            _credentialsHandler = Handled<UserCredentials>(configurator);
        }
コード例 #22
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _header = GetTask<ClaimsIdentity>();

            _handled = Handler<PingMessage>(configurator, context =>
            {
                _header.TrySetResult(context.Headers.Get<ClaimsIdentity>("Claims-Identity"));

                return TaskUtil.Completed;
            });
        }
コード例 #23
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            configurator.UseTransform<A>(t =>
            {
                // Replace modifies the original message, versus Set which leaves the original message unmodified
                t.Replace(x => x.Second, context => "World");
            });

            _received = Handled<A>(configurator);
        }
コード例 #24
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            _repository = new InMemorySagaRepository<Request_Specs.TestState>();

            var settings = new RequestSettingsImpl(ServiceQueueAddress, QuartzQueueAddress, TimeSpan.FromSeconds(1));

            _machine = new TestStateMachine(settings);

            configurator.StateMachineSaga(_machine, _repository);
        }
コード例 #25
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            _collection = Database.GetCollection<RoutingSlipDocument>(EventCollectionName);

            var persister = new RoutingSlipEventPersister(_collection);

            configurator.Consumer(() => new RoutingSlipCompletedConsumer(persister));

            _completed = Handled<RoutingSlipCompleted>(configurator, x => x.Message.TrackingNumber == _trackingNumber);
        }
コード例 #26
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            configurator.UseInMemoryOutbox();

            _pingReceived = GetTask<ConsumeContext<PingMessage>>();

            configurator.Handler<PingMessage>(context =>
            {
                _pingReceived.TrySetResult(context);

                context.Respond(new PongMessage(context.Message.CorrelationId));

                throw new IntentionalTestException("This time bad things happen");
            });
        }
コード例 #27
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            var builder = new ContainerBuilder();

            builder.RegisterGeneric(typeof(InMemorySagaRepository<>))
                .As(typeof(ISagaRepository<>))
                .SingleInstance();

            builder.RegisterType<PublishTestStartedActivity>();

            builder.RegisterStateMachineSagas(typeof(TestStateMachineSaga).Assembly);

            _container = builder.Build();

            configurator.LoadStateMachineSagas(_container);
        }
コード例 #28
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInputQueueEndpoint(configurator);

            configurator.Turnout<ProcessFile>(_busFactoryConfigurator, x =>
            {
                x.SuperviseInterval = TimeSpan.FromSeconds(1);
                x.SetJobFactory(async context =>
                {
                    await Console.Out.WriteLineAsync($"Started: {context.Message.Filename}");

                    await Task.Delay(context.Message.Size);

                    await Console.Out.WriteLineAsync($"Stopped: {context.Message.Filename}");
                });
            });
        }
コード例 #29
0
        protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _container = new Container(x =>
            {
                x.For(typeof(ISagaRepository<>), new SingletonLifecycle())
                    .Use(typeof(InMemorySagaRepository<>));

                x.ForConcreteType<PublishTestStartedActivity>();

                x.For<TestStateMachineSaga>(new SingletonLifecycle())
                    .Use<TestStateMachineSaga>();

                x.Forward<SagaStateMachine<TestInstance>, TestStateMachineSaga>();
            });

            configurator.LoadStateMachineSagas(_container);
        }
コード例 #30
0
ファイル: DataBus_Specs.cs プロジェクト: kotvisbj/MassTransit
            protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
            {
                string baseDirectory = AppDomain.CurrentDomain.BaseDirectory;

                string messageDataPath = Path.Combine(baseDirectory, "MessageData");

                var dataDirectory = new DirectoryInfo(messageDataPath);

                _repository = new FileSystemMessageDataRepository(dataDirectory);

                configurator.UseMessageData<MessageWithBigData>(_repository);

                _received = Handled<MessageWithBigData>(configurator);

                configurator.UseMessageData<MessageWithByteArray>(_repository);

                _receivedBytes = Handled<MessageWithByteArray>(configurator);
            }
コード例 #31
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.UseRetry(x => x.Immediate(2));
     configurator.Saga(_repository);
 }
コード例 #32
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Saga(_repository);
 }
コード例 #33
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Consumer <ConsumerA>();
     configurator.Consumer <ConsumerB>();
 }
コード例 #34
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            configurator.UseInMemoryOutbox();

            configurator.ConfigureConsumers(Registration);
        }
コード例 #35
0
 protected void ConfigureConsumer(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.ConfigureConsumer <SimpleConsumer>(_provider);
     configurator.ConfigureConsumer <SimplerConsumer>(_provider);
 }
コード例 #36
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _handled = Handled <NastyEvent>(configurator);

            EndpointConvention.Map <BusinessEvent>(configurator.InputAddress);
        }
コード例 #37
0
 protected virtual void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
 }
コード例 #38
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     _handled = Handled <PingMessage>(configurator);
 }
コード例 #39
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.UseInMemoryOutbox();
     configurator.ConfigureSaga <TestInstance>(_provider);
 }
コード例 #40
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Consumer(() => new TestConsumer());
     configurator.Consumer(() => new GenericConsumer <GenericMessage <LongMessage> >());
 }
コード例 #41
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     Handled <SimpleMessageClass>(configurator);
 }
コード例 #42
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Consumer <CommonRequestConsumer>();
 }
コード例 #43
0
 protected abstract void ConfigureFilters(IInMemoryReceiveEndpointConfigurator configurator);
コード例 #44
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            configurator.UseServiceScope(_provider);

            base.ConfigureInMemoryReceiveEndpoint(configurator);
        }
コード例 #45
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _consumer = new OneMessageConsumer(GetTask <MessageA>());

            configurator.Consumer(typeof(OneMessageConsumer), type => _consumer);
        }
コード例 #46
0
 protected override void ConfigureSagaStateMachine(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.ConfigureSaga <TestInstance>(_container);
 }
コード例 #47
0
 protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     // we have to do this explicitly, since the metadata is not exposed by Ninject
     configurator.Saga <SimpleSaga>(_container);
 }
コード例 #48
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     _submitted = Handled <JobSubmitted>(configurator, context => context.Message.JobId == _jobId);
     _started   = Handled <JobStarted>(configurator, context => context.Message.JobId == _jobId);
     _cancelled = Handled <JobCanceled>(configurator, context => context.Message.JobId == _jobId);
 }
コード例 #49
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            base.ConfigureInMemoryReceiveEndpoint(configurator);

            _handled = Handled <Command>(configurator);
        }
コード例 #50
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     ConfigureSaga(configurator);
 }
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     archiveRecordRemovedTask = Handler <IArchiveRecordRemoved>(configurator,
                                                                context => new ArchiveRecordRemovedConsumer(harvestManager.Object).Consume(context));
 }
コード例 #52
0
 protected override void ConfigureConsumer(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.ConfigureConsumer <SimpleConsumer>(_container);
 }
コード例 #53
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     _handled = Handler <PingMessage>(configurator, context => context.RespondAsync(new PongMessage(context.Message.CorrelationId)));
 }
コード例 #54
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.ConfigureSaga <SimpleSaga>(Registration);
 }
コード例 #55
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.UseMessageRetry(r => r.Immediate(5));
     configurator.UseInMemoryOutbox();
     configurator.ConfigureSaga <TestInstance>(_provider.GetRequiredService <IBusRegistrationContext>());
 }
コード例 #56
0
        protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
        {
            _machine = new ChoirStatePessimisticMachine();

            configurator.StateMachineSaga(_machine, _repository.Value);
        }
コード例 #57
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.Saga <SimpleSaga>(_container);
 }
コード例 #58
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     _ping = Handler <PingMessage>(configurator, async x => await x.RespondAsync(new PongMessage(x.Message.CorrelationId)));
 }
コード例 #59
0
 protected override void ConfigureInMemoryReceiveEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.ConfigureConsumer <FaultyConsumer>(Registration);
 }
コード例 #60
0
 protected override void ConfigureInputQueueEndpoint(IInMemoryReceiveEndpointConfigurator configurator)
 {
     configurator.LoadFrom(_container);
 }