static async Task ConfigureTestExecution(TestDependencyType type, EndpointConfiguration config, RunSettings settings, string endpointName, PublisherMetadata publisherMetadata) { var dependencyTypeString = type.ToString(); var dependencyType = settings.Get <Type>(dependencyTypeString); var typeName = "ConfigureEndpoint" + dependencyType.Name; var configurerType = Type.GetType(typeName, false); if (configurerType == null) { throw new InvalidOperationException($"Acceptance Test project must include a non-namespaced class named '{typeName}' implementing {typeof(IConfigureEndpointTestExecution).Name}. See {typeof(ConfigureEndpointMsmqTransport).FullName} for an example."); } var configurer = Activator.CreateInstance(configurerType) as IConfigureEndpointTestExecution; if (configurer == null) { throw new InvalidOperationException($"{typeName} does not implement {typeof(IConfigureEndpointTestExecution).Name}."); } await configurer.Configure(endpointName, config, settings, publisherMetadata).ConfigureAwait(false); ActiveTestExecutionConfigurer cleaners; var cleanerKey = "ConfigureTestExecution." + endpointName; if (!settings.TryGet(cleanerKey, out cleaners)) { cleaners = new ActiveTestExecutionConfigurer(); settings.Set(cleanerKey, cleaners); } cleaners.Add(configurer); }
static async Task ConfigureTestExecution(TestDependencyType type, EndpointConfiguration config, RunSettings settings, string endpointName, PublisherMetadata publisherMetadata) { var dependencyTypeString = type.ToString(); var dependencyType = settings.Get<Type>(dependencyTypeString); var typeName = "ConfigureEndpoint" + dependencyType.Name; var configurerType = Type.GetType(typeName, false); if (configurerType == null) { throw new InvalidOperationException($"Acceptance Test project must include a non-namespaced class named '{typeName}' implementing {typeof(IConfigureEndpointTestExecution).Name}. See {typeof(ConfigureEndpointMsmqTransport).FullName} for an example."); } var configurer = Activator.CreateInstance(configurerType) as IConfigureEndpointTestExecution; if (configurer == null) { throw new InvalidOperationException($"{typeName} does not implement {typeof(IConfigureEndpointTestExecution).Name}."); } await configurer.Configure(endpointName, config, settings, publisherMetadata).ConfigureAwait(false); ActiveTestExecutionConfigurer cleaners; var cleanerKey = "ConfigureTestExecution." + endpointName; if (!settings.TryGet(cleanerKey, out cleaners)) { cleaners = new ActiveTestExecutionConfigurer(); settings.Set(cleanerKey, cleaners); } cleaners.Add(configurer); }
public static void DefineBuilder(this EndpointConfiguration config, RunSettings settings) { Type builderType; if (!settings.TryGet("Builder", out builderType)) { var builderDescriptor = Builders.Default; if (builderDescriptor == null) { return; //go with the default builder } settings.Merge(builderDescriptor.Settings); } builderType = settings.Get <Type>("Builder"); var typeName = "Configure" + builderType.Name; var configurerType = Type.GetType(typeName, false); if (configurerType != null) { var configurer = Activator.CreateInstance(configurerType); dynamic dc = configurer; dc.Configure(config); } config.UseContainer(builderType); }
public static void DefineBuilder(this EndpointConfiguration config, RunSettings settings) { Type builderType; if (!settings.TryGet("Builder", out builderType)) { var builderDescriptor = Builders.Default; if (builderDescriptor == null) { return; //go with the default builder } settings.Merge(builderDescriptor.Settings); } builderType = settings.Get<Type>("Builder"); var typeName = "Configure" + builderType.Name; var configurerType = Type.GetType(typeName, false); if (configurerType != null) { var configurer = Activator.CreateInstance(configurerType); dynamic dc = configurer; dc.Configure(config); } config.UseContainer(builderType); }
public Task Configure(string endpointName, EndpointConfiguration configuration, RunSettings settings) { connectionString = settings.Get <string>("Transport.ConnectionString"); configuration.UseTransport <RabbitMQTransport>().ConnectionString(connectionString); return(TaskEx.CompletedTask); }
public Task Configure(string endpointName, EndpointConfiguration configuration, RunSettings settings) { queueBindings = configuration.GetSettings().Get <QueueBindings>(); var connectionString = settings.Get <string>("Transport.ConnectionString"); configuration.UseTransport <MsmqTransport>().ConnectionString(connectionString); return(Task.FromResult(0)); }
public Task Configure(string endpointName, EndpointConfiguration configuration, RunSettings settings) { queueBindings = configuration.GetSettings().Get <QueueBindings>(); var connectionString = settings.Get <string>("Transport.ConnectionString"); configuration.UseTransport <EventStoreTransport>().ConnectionString(connectionString).DisableExchangeCaching(); configuration.UseSerialization <JsonSerializer>().Encoding(new UTF8Encoding(false)); return(Task.FromResult(0)); }
public Task Configure(string endpointName, EndpointConfiguration configuration, RunSettings settings, PublisherMetadata publisherMetadata) { queueBindings = configuration.GetSettings().Get <QueueBindings>(); var connectionString = settings.Get <string>("Transport.ConnectionString"); var transportConfig = configuration.UseTransport <MsmqTransport>(); transportConfig.ConnectionString(connectionString); var routingConfig = transportConfig.Routing(); foreach (var publisher in publisherMetadata.Publishers) { foreach (var eventType in publisher.Events) { routingConfig.RegisterPublisher(eventType, publisher.PublisherName); } } return(Task.FromResult(0)); }