public override IMigrationProcessor Create(string connectionString, IAnnouncer announcer, IMigrationProcessorOptions options)
        {
            var factory    = new RedshiftDbFactory();
            var connection = factory.CreateConnection(connectionString);

            return(new RedshiftProcessor(connection, new RedshiftGenerator(), announcer, options, factory));
        }
        public override IMigrationProcessor Create(string connectionString, IAnnouncer announcer, IMigrationProcessorOptions options)
        {
            var factory       = new RedshiftDbFactory(_serviceProvider);
            var connection    = factory.CreateConnection(connectionString);
            var quoterOptions = new OptionsWrapper <QuoterOptions>(new QuoterOptions());

            return(new RedshiftProcessor(connection, new RedshiftGenerator(new RedshiftQuoter(quoterOptions)), announcer, options, factory));
        }
 public RedshiftProcessor(
     [NotNull] RedshiftDbFactory factory,
     [NotNull] RedshiftGenerator generator,
     [NotNull] ILogger <RedshiftProcessor> logger,
     [NotNull] IOptionsSnapshot <ProcessorOptions> options,
     [NotNull] IConnectionStringAccessor connectionStringAccessor)
     : base(() => factory.Factory, generator, logger, options.Value, connectionStringAccessor)
 {
 }