public static LinFxBuilder AddApplication <TStartupModule>( [NotNull] this LinFxBuilder builder, [CanBeNull] Action <ApplicationCreationOptions> optionsAction = null) where TStartupModule : IModule { AddApplication <TStartupModule>(builder.Services, optionsAction); return(builder); }
public static LinFxBuilder AddBlogging(this LinFxBuilder builder) { builder .AddAssembly(typeof(BloggingServiceCollectionExtensions).Assembly); builder.Services.Configure <PermissionOptions>(options => { options.DefinitionProviders.Add(typeof(BloggingPermissionDefinitionProvider)); }); return(builder); }
public static LinFxBuilder AddRabbitMq(this LinFxBuilder builder, Action <RabbitMqOptions> optionsAction) { Check.NotNull(builder, nameof(builder)); Check.NotNull(optionsAction, nameof(optionsAction)); var options = new RabbitMqOptions(); optionsAction?.Invoke(options); builder.Services.Configure(optionsAction); return(builder.AddRabbitMq()); }
public static LinFxBuilder AddRabbitMq(this LinFxBuilder builder) { Check.NotNull(builder, nameof(builder)); builder.Services .AddSingleton <IConnectionPool, ConnectionPool>() .AddSingleton <IChannelPool, ChannelPool>() .AddSingleton <IRabbitMqMessageConsumerFactory, RabbitMqMessageConsumerFactory>() .AddSingleton <IRabbitMqSerializer, RabbitMqSerializer>() .AddTransient <RabbitMqMessageConsumer>(); return(builder); }
/// <summary> /// AddLinFx Code /// </summary> /// <param name="services"></param> /// <param name="optionsAction"></param> /// <returns></returns> public static LinFxBuilder AddLinFx(this IServiceCollection services, Action <LinFxOptions> optionsAction = default) { if (optionsAction != null) { services.Configure(optionsAction); } var builder = new LinFxBuilder(services); services.AddCoreServices(); services.AddAssemblyOf <IApplication>(); return(builder); }
public EventBusOptionsBuilder(LinFxBuilder fx, EventBusOptions options) { Fx = fx; Options = options; }
/// <summary> /// 注册程序集下实现依赖注入接口的类型 /// </summary> /// <param name="builder"></param> /// <param name="assembly"></param> public static LinFxBuilder AddAssembly(this LinFxBuilder builder, Assembly assembly) { builder.Services.AddAssembly(assembly); return(builder); }
public static LinFxBuilder Configure <TOptions>(this LinFxBuilder builder, Action <TOptions> configureOptions) where TOptions : class { builder.Services.Configure(configureOptions); return(builder); }