public override void Handle(SampleAggregateChangedEvent msg) { base.Handle(msg); EventsReplayInfoHolder.ProcessedMessages[msg.SourceId].Add(new ProcessedHistory { SequenceNumber = msg.History.SequenceNumber, HandlerName = this.GetType().Name }); }
public void Message_process_actor_produce_fault_with_sagaId_from_incoming_message(string payload) { var message = new SampleAggregateChangedEvent(payload, Guid.NewGuid(), DateTime.Now, Guid.NewGuid()); var transport = new LocalAkkaEventBusTransport(Sys); transport.Subscribe <IMessageMetadataEnvelop <Fault <SampleAggregateChangedEvent> > >(TestActor); var actor = Sys.ActorOf(Props.Create(() => new MessageHandlingActor <SampleAggregateChangedEvent, OddFaultyMessageHandler>( new OddFaultyMessageHandler(transport), transport))); actor.Tell(message); var fault = ExpectMsg <IMessageMetadataEnvelop <Fault <SampleAggregateChangedEvent> > >(); Assert.AreEqual(message.SagaId, fault.Message.SagaId); }
public void Given_persisted_domain_events_when_replaying_it_for_existing_aggregate_id() { var aggregateId = Guid.NewGuid(); _sampleAggregateCreatedEvent = new SampleAggregateCreatedEvent("123", aggregateId); _sampleAggregateChangedEvent = new SampleAggregateChangedEvent("234", aggregateId); SaveInJournal <SampleAggregate>(aggregateId, _sampleAggregateCreatedEvent, _sampleAggregateChangedEvent); EventsReplayInfoHolder.ProcessedMessages[aggregateId] = new List <ProcessedHistory>(); var chronicle = new AkkaEventsChronicle(new AutoTestAkkaConfiguration()); //chronicle.Router.RegisterHandler<SampleAggregateCreatedEvent, AggregateCreatedProjectionBuilder_Test>(e => e.SourceId); chronicle.Router.RegisterHandler <SampleAggregateChangedEvent, AggregateChangedProjectionBuilder_Test>(e => e.SourceId); chronicle.Replay <SampleAggregate>(aggregateId); Thread.Sleep(2000); }
public void Given_only_aggregate_events_persisted_it_can_be_loaded(IRepository <DomainEvent> eventRepo, AggregateRepository aggrRepo) { try { _sourceId = Guid.NewGuid(); _createdEvent = new SampleAggregateCreatedEvent("initial value", _sourceId); _changedEvent = new SampleAggregateChangedEvent("changed value", _sourceId); string persistenceId = AggregateActorName.New <SampleAggregate>(_sourceId).ToString(); eventRepo.Save(persistenceId, _createdEvent, _changedEvent); _aggregate = aggrRepo.LoadAggregate <SampleAggregate>(_sourceId); Assert.AreEqual(_sourceId, _aggregate.Id); Assert.AreEqual(_changedEvent.Value, _aggregate.Value); } finally { eventRepo.Dispose(); aggrRepo.Dispose(); } }
private void Apply(SampleAggregateChangedEvent e) { Value = e.Value; }
public MessageHandleException(SampleAggregateChangedEvent msg) { Msg = msg; }