public override TransportSendInfrastructure ConfigureSendInfrastructure() { var connectionFactory = CreateConnectionFactory(); settings.GetOrCreate <EndpointInstances>().AddOrReplaceInstances("SqlServer", schemaAndCatalogSettings.ToEndpointInstances()); return(new TransportSendInfrastructure( () => { ITableBasedQueueOperationsReader queueOperationsReader = new TableBasedQueueOperationsReader(addressTranslator); if (delayedDeliverySettings != null) { queueOperationsReader = new DelayedDeliveryTableBasedQueueOperationsReader(CreateDelayedMessageTable(), queueOperationsReader); } var dispatcher = new MessageDispatcher(new TableBasedQueueDispatcher(connectionFactory, queueOperationsReader), addressTranslator); return dispatcher; }, () => { var result = UsingV2ConfigurationChecker.Check(); if (result.Succeeded && delayedDeliverySettings != null) { result = DelayedDeliveryInfrastructure.CheckForInvalidSettings(settings); } return Task.FromResult(result); })); }
public override TransportSendInfrastructure ConfigureSendInfrastructure() { var connectionFactory = CreateLegacyConnectionFactory(); settings.GetOrCreate <EndpointInstances>().AddOrReplaceInstances("SqlServer", schemaAndCatalogSettings.ToEndpointInstances()); return(new TransportSendInfrastructure( () => new LegacyMessageDispatcher(addressTranslator, connectionFactory), () => { var result = UsingV2ConfigurationChecker.Check(); return Task.FromResult(result); })); }
public override TransportSendInfrastructure ConfigureSendInfrastructure() { var connectionFactory = CreateConnectionFactory(); settings.Get <EndpointInstances>().AddOrReplaceInstances("SqlServer", endpointSchemasSettings.ToEndpointInstances()); return(new TransportSendInfrastructure( () => new MessageDispatcher(new TableBasedQueueDispatcher(connectionFactory), addressParser), () => { var result = UsingV2ConfigurationChecker.Check(); return Task.FromResult(result); })); }