public static IQuickShopServiceBuilder AddConsoleLogger(this IQuickShopServiceBuilder builder)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            builder.Services.AddSingleton <ILogger, ConsoleLogger>();

            return(builder);
        }
Ejemplo n.º 2
0
        public static IQuickShopServiceBuilder AddInMemoryRepository(this IQuickShopServiceBuilder builder)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            builder.Services.AddSingleton <IDatabaseContext, InMemoryDatabaseContext>();

            return(builder);
        }
Ejemplo n.º 3
0
        public static IQuickShopServiceBuilder AddStripePaymentProvider(this IQuickShopServiceBuilder builder, Action <StripeOptions> options)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            builder.Services.Configure(options);

            builder.Services.AddSingleton <IPaymentProvider, StripePaymentProvider>();

            return(builder);
        }
        public static IQuickShopServiceBuilder AddMongoRepository(this IQuickShopServiceBuilder builder, Action <MongoOptions> options)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            builder.Services.Configure(options);

            builder.Services.AddSingleton <ICollectionNameMapper, TypeCollectionNameMapper>();
            builder.Services.AddSingleton <IDatabaseContext, MongoDatabaseContext>();

            return(builder);
        }
 public static IQuickShopServiceBuilder AddMongoRepository(this IQuickShopServiceBuilder builder)
 => AddMongoRepository(builder, _ => { });
Ejemplo n.º 6
0
 public static IQuickShopServiceBuilder AddStripePaymentProvider(this IQuickShopServiceBuilder builder)
 => AddStripePaymentProvider(builder, _ => { });