protected override void Load(ContainerBuilder containerBuilder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); containerBuilder .RegisterModule(new DataDogModule(_configuration)); containerBuilder .RegisterModule(new SyndicationModule(_configuration, _services, _loggerFactory)); containerBuilder .RegisterType <ProblemDetailsHelper>() .AsSelf(); containerBuilder.RegisterModule(new IdempotencyModule( _services, _configuration.GetSection(IdempotencyConfiguration.Section).Get <IdempotencyConfiguration>() .ConnectionString, new IdempotencyMigrationsTableInfo(Schema.Import), new IdempotencyTableInfo(Schema.Import), _loggerFactory)); containerBuilder.RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)); containerBuilder.RegisterModule(new EnvelopeModule()); containerBuilder.RegisterModule(new SequenceModule(_configuration, _services, _loggerFactory)); containerBuilder.RegisterModule(new CommandHandlingModule(_configuration)); containerBuilder.Populate(_services); }
private IContainer CreateContainer() { var builder = new ContainerBuilder(); builder.RegisterModule <ProjectorModule>(); builder.RegisterModule(new SqlStreamStoreModule(string.Empty, Schemas.Messages)); builder .RegisterType <LoggerFactory>() .As <ILoggerFactory>() .SingleInstance(); builder.RegisterModule( new EventHandlingModule( typeof(DomainAssemblyMarker).Assembly, EventsJsonSerializerSettingsProvider.CreateSerializerSettings())); builder.RegisterModule <EnvelopeModule>(); builder .RegisterInstance(new ProjectionContext(CreateContextOptionsFor <ProjectionContext>())) .AsSelf(); ContainerSetup(builder); return(builder.Build()); }
public void DeserializingWithoutSourceProperties() { var serialized = @"{""publicServiceId"":""DVR000000001"",""name"":""dag wouter"",""privateZoneId"":""UNREGISTERED""}"; var settings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); var @event = JsonConvert.DeserializeObject <CompetentAuthorityWasAssigned>(serialized, settings); @event.CompetentAuthorityProvenance.Uri.Should().BeNull(); @event.CompetentAuthorityProvenance.Source.Should().Be(OrganisationSource.Unknown); }
protected override void Load(ContainerBuilder containerBuilder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); containerBuilder .RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)) .RegisterModule(new CommandHandlingModule(_configuration)); containerBuilder .RegisterType <SqlPersistentLocalIdGenerator>() .As <IPersistentLocalIdGenerator>(); }
public async Task WhenMessageIsAppended() { var mapping = new EventMapping(EventMapping.DiscoverEventNamesInAssembly(typeof(RoadNetworkEvents).Assembly)); var settings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); var archiveStream = new StreamName("archive-1"); var commandStream = new StreamName("road-network-commands"); var id = Guid.NewGuid(); var reaction = new ReactionScenarioBuilder() .Given(new RecordedEvent(archiveStream, new Messages.UploadRoadNetworkChangesArchive { ArchiveId = "123" }).WithMessageId(id)) .Then(new RecordedEvent(commandStream, new Messages.UploadRoadNetworkChangesArchive { ArchiveId = "123" }).WithMessageId(id).WithMetadata(new { Position = 1 })) .Build(); var sut = new Subscriber(_store, commandStream); using (sut) { sut.Start(); //Act foreach (var stream in reaction.Givens.GroupBy(given => given.Stream)) { await _store.AppendToStream( stream.Key, ExpectedVersion.NoStream, stream.Select((given, index) => new NewStreamMessage( Deterministic.Create(Deterministic.Namespaces.Events, $"{given.Stream}-{index}"), mapping.GetEventName(given.Event.GetType()), JsonConvert.SerializeObject(given.Event, settings), given.Metadata != null ? JsonConvert.SerializeObject(given.Metadata, settings) : null )).ToArray()); } //Await var page = await _store.ReadStreamForwards(commandStream, StreamVersion.Start, 1); while (page.Status == PageReadStatus.StreamNotFound) { page = await _store.ReadStreamForwards(commandStream, StreamVersion.Start, 1); } //Assert //Assert.Equal(_messageId, page.Messages[0].MessageId); } await sut.Disposed; }
protected override void Load(ContainerBuilder containerBuilder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); containerBuilder .RegisterModule(new LoggingModule(_configuration, _services)) .RegisterModule(new DataDogModule(_configuration)) .RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)) .RegisterModule(new CommandHandlingModule(_configuration)) .RegisterModule(new ApiProjectionsModule(_configuration, _services, _loggerFactory)); containerBuilder .Populate(_services); }
private void RegisterProjectionSetup(ContainerBuilder builder) { builder.RegisterModule( new EventHandlingModule( typeof(DomainAssemblyMarker).Assembly, EventsJsonSerializerSettingsProvider.CreateSerializerSettings())) .RegisterModule <EnvelopeModule>() .RegisterEventstreamModule(_configuration) .RegisterModule(new ProjectorModule(_configuration)); RegisterExtractProjections(builder); RegisterLastChangedProjections(builder); RegisterLegacyProjections(builder); }
protected override void Load(ContainerBuilder containerBuilder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); containerBuilder .RegisterType <DvrCodeGenerator>() .InstancePerLifetimeScope(); containerBuilder .RegisterModule(new SecurityModule(_configuration)) .RegisterModule(new DataDogModule(_configuration)) .RegisterModule(new BackofficeModule(_configuration, _services, _loggerFactory)) .RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)) .RegisterModule(new EnvelopeModule()) .RegisterModule(new CommandHandlingModule(_configuration)); containerBuilder.Populate(_services); }
protected override void ConfigureEventHandling(ContainerBuilder builder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); builder.RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)); }
protected override void Load(ContainerBuilder containerBuilder) { var eventSerializerSettings = EventsJsonSerializerSettingsProvider.CreateSerializerSettings(); containerBuilder .RegisterModule(new DataDogModule(_configuration)) .RegisterModule(new LegacyModule(_configuration, _services, _loggerFactory)); containerBuilder .RegisterModule(new IdempotencyModule( _services, _configuration.GetSection(IdempotencyConfiguration.Section).Get <IdempotencyConfiguration>().ConnectionString, new IdempotencyMigrationsTableInfo(Schema.Import), new IdempotencyTableInfo(Schema.Import), _loggerFactory)); containerBuilder .RegisterType <IdempotentCommandHandlerModule>() .AsSelf(); containerBuilder .RegisterType <IdempotentCommandHandlerModuleProcessor>() .As <IIdempotentCommandHandlerModuleProcessor>(); containerBuilder .RegisterModule(new EventHandlingModule(typeof(DomainAssemblyMarker).Assembly, eventSerializerSettings)); containerBuilder .RegisterModule(new EnvelopeModule()); containerBuilder .RegisterModule(new CommandHandlingModule(_configuration)); containerBuilder .RegisterType <IdempotentCommandHandlerModule>() .AsSelf(); containerBuilder .RegisterType <IdempotentCommandHandlerModuleProcessor>() .As <IIdempotentCommandHandlerModuleProcessor>(); containerBuilder.RegisterModule( new CrabImportModule( _services, _configuration.GetConnectionString("CrabImport"), Schema.Import, _loggerFactory)); var projectionsConnectionString = _configuration.GetConnectionString("Sequences"); _services .AddDbContext <SequenceContext>(options => options .UseLoggerFactory(_loggerFactory) .UseSqlServer(projectionsConnectionString, sqlServerOptions => { sqlServerOptions.EnableRetryOnFailure(); sqlServerOptions.MigrationsHistoryTable(MigrationTables.Sequence, Schema.Sequence); })); containerBuilder .RegisterType <SqlPersistentLocalIdGenerator>() .As <IPersistentLocalIdGenerator>(); containerBuilder.Populate(_services); }