public static IServiceCollection AddCqsEngine(this IServiceCollection services) { services.AddScoped<IQueryProcessor, QueryProcessor>(); services.AddScoped<ICommandDispatcher, CommandDispatcher>(); return services; }
public static IContainerBuilder ConfigureODataServices(this IContainerBuilder builder) { builder.AddSingleton<ODataWriterValidator>(); builder.AddScoped<ODataMessageWriter>(); builder.AddScoped<ODataRequestContext>(); return builder; }
public static IServiceCollection AddNotifierEvents(this IServiceCollection services) { services.AddScoped<IEventBus, DefaultOrchardEventBus>(); services.AddScoped<IEventNotifier, DefaultOrchardEventNotifier>(); return services; }
public static void AddQuotes(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IQuoteStore, QuoteStore>(); services.AddScoped<QuoteManager, QuoteManager>(); dataContextBuilder.RegisterModel<Quote>(); }
public static IServiceCollection AddOrchardMvc(this IServiceCollection services) { services .AddMvcCore(options => { options.Filters.Add(new ModelBinderAccessorFilter()); options.Conventions.Add(new ModuleAreaRouteConstraintConvention()); options.ModelBinders.Insert(0, new CheckMarkModelBinder()); }) .AddViews() .AddViewLocalization() .AddRazorViewEngine() .AddJsonFormatters(); services.AddScoped<IModelUpdaterAccessor, LocalModelBinderAccessor>(); services.AddTransient<IFilterProvider, DependencyFilterProvider>(); services.AddTransient<IMvcRazorHost, TagHelperMvcRazorHost>(); services.AddScoped<IAssemblyProvider, OrchardMvcAssemblyProvider>(); services.AddSingleton<ICompilationService, DefaultRoslynCompilationService>(); services.Configure<RazorViewEngineOptions>(options => { var expander = new ModuleViewLocationExpander(); options.ViewLocationExpanders.Add(expander); }); return services; }
public static IServiceCollection AddSmidge(this IServiceCollection services) { //services.AddNodeServices(NodeHostingModel.Http); services.AddTransient<IConfigureOptions<SmidgeOptions>, SmidgeOptionsSetup>(); services.AddTransient<IConfigureOptions<Bundles>, BundlesSetup>(); services.AddSingleton<PreProcessPipelineFactory>(); services.AddSingleton<BundleManager>(); services.AddSingleton<FileSystemHelper>(); services.AddSingleton<PreProcessManager>(); services.AddSingleton<ISmidgeConfig, SmidgeConfig>(); services.AddScoped<SmidgeContext>(); services.AddScoped<SmidgeHelper>(); services.AddSingleton<IUrlManager, DefaultUrlManager>(); services.AddSingleton<IHasher, Crc32Hasher>(); //pre-processors services.AddSingleton<IPreProcessor, JsMin>(); services.AddSingleton<IPreProcessor, CssMinifier>(); //services.AddSingleton<IPreProcessor, NodeMinifier>(); services.AddScoped<IPreProcessor, CssImportProcessor>(); services.AddScoped<IPreProcessor, CssUrlProcessor>(); //Add the controller models as DI services - these get auto created for model binding services.AddTransient<BundleModel>(); services.AddTransient<CompositeFileModel>(); return services; }
public static IServiceCollection AddOnlineTvDatabase(this IServiceCollection services) { services.AddSingleton<IOnlineTvDatabase, OnlineTvDatabaseClient>(); services.AddScoped<IHttpClient, HttpClient>(); services.AddSingleton<IObjectUrlFactory, ObjectUrlFactory>(); services.AddScoped<IObjectUrlBuilder<GetSeriesInput>, GetSeriesUrlBuilder>(); return services; }
public static void AddDefaultServices(this IServiceCollection services) { services.AddMvc(); services.AddScoped<LogExceptionFilter>(); services.AddScoped<ExceptionResponseFilter>(); services.AddScoped<NullFilter>(); }
public static IServiceCollection AddMapProcessing( this IServiceCollection services) { services.AddScoped<IDungeonPopulator, DungeonPopulator>(); services.AddScoped<IProcessor, Processor>(); return services; }
public static IServiceCollection ConfigureDependencies(this IServiceCollection services) { services.AddScoped<ICarrierRepository, CarrierRepository>(); services.AddScoped<IDriverRepository, DriverRepository>(); services.AddScoped<IVehicleRepository, VehicleRepository>(); services.AddScoped<IRidesRepository, RidesRepository>(); return services; }
public static void AddPages(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IPageStore, PageStore>(); services.AddScoped<IPageManager, PageManager>(); dataContextBuilder.RegisterModel<Page>(); dataContextBuilder.RegisterModel<PlainTextPageContent>(); }
public static void AddBlogs(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IBlogStore, BlogStore>(); services.AddScoped<IBlogPostStore, BlogPostStore>(); services.AddScoped<BlogManager, BlogManager>(); dataContextBuilder.RegisterModel<Blog>(); dataContextBuilder.RegisterModel<BlogPost>(); }
public static IServiceCollection AddBackgroundTasks(this IServiceCollection services) { services.TryAddSingleton<IBackgroundTaskService, BackgroundTaskService>(); services.AddScoped<BackgroundTasksStarter>(); services.AddScoped<IOrchardShellEvents>(sp => sp.GetRequiredService<BackgroundTasksStarter>()); return services; }
public static IServiceCollection AddCloudscribeSetup( this IServiceCollection services, IConfigurationRoot configuration) { services.Configure<SetupOptions>(configuration.GetSection("SetupOptions")); services.AddScoped<SetupManager, SetupManager>(); services.AddScoped<IVersionProvider, SetupVersionProvider>(); return services; }
public static IServiceCollection AddCommands(this IServiceCollection services) { services.AddScoped<ICommandManager, DefaultCommandManager>(); services.AddScoped<ICommandHandler, HelpCommand>(); services.AddScoped<ICommandParametersParser, CommandParametersParser>(); services.AddScoped<ICommandParser, CommandParser>(); return services; }
public static IServiceCollection AddCloudscribeCoreNoDbStorage( this IServiceCollection services ) { services.AddScoped<IBasicQueries<SiteSettings>, CrossProjectQueries<SiteSettings>>(); services.AddScoped<IBasicQueries<SiteHost>, CrossProjectQueries<SiteHost>>(); services.AddNoDb<SiteSettings>(); services.AddNoDb<SiteHost>(); services.AddNoDb<SiteUser>(); services.AddNoDb<SiteRole>(); services.AddNoDb<UserRole>(); services.AddNoDb<UserClaim>(); services.AddNoDb<UserLogin>(); services.AddNoDb<UserLocation>(); services.AddNoDb<GeoCountry>(); services.AddNoDb<GeoZone>(); services.AddScoped<IDataPlatformInfo, DataPlatformInfo>(); //services.AddScoped<IProjectResolver, DefaultProjectResolver>(); services.AddScoped<ISiteCommands, SiteCommands>(); services.AddScoped<ISiteQueries, SiteQueries>(); services.AddScoped<IUserCommands, UserCommands>(); services.AddScoped<IUserQueries, UserQueries>(); services.AddScoped<IGeoCommands, GeoCommands>(); services.AddScoped<IGeoQueries, GeoQueries>(); return services; }
public static IServiceCollection AddContentManagement(this IServiceCollection services) { services.AddScoped<ICacheContextProvider, ContentDefinitionCacheContextProvider>(); services.TryAddScoped<IContentDefinitionManager, ContentDefinitionManager>(); services.TryAddScoped<IContentManager, DefaultContentManager>(); services.TryAddScoped<IContentManagerSession, DefaultContentManagerSession>(); services.AddScoped<ContentItemIndexProvider>(); services.AddScoped<IDataMigration, Migrations>(); return services; }
public static IServiceCollection AddEF(this IServiceCollection services) { services.AddDbContext<Context>( options => options.UseSqlite("Filename=learnwordsfast.db", b => b.MigrationsAssembly("LearnWordsFast.API"))); services.AddScoped<IWordRepository, WordRepository>(); services.AddScoped<ILanguageRepository, LanguageRepository>(); services.AddSingleton<IInitializeDataManager, InitialDataManager>(); return services; }
public static void AddRepositories(this IServiceCollection services) { services.AddScoped<IMongoDatabase>(provider => { var server = new MongoClient(); return server.GetDatabase("weblog"); }); services.AddScoped<IPostRepository>(provider => new PostRepository(provider.GetRequiredService<IMongoDatabase>())); }
public static IServiceCollection AddMapBuilding( this IServiceCollection services) { services.AddTransient<IDirectionPicker>( s => new DirectionPicker( s.GetService<DungeonParameters>().TwistFactor)); services.AddTransient<IList<IMapBuilderCommand>>(s => GenerateCommands(s)); services.AddScoped<IMapConverter, MapConverter>(); services.AddScoped<IMapBuilder, MapBuilder>(); return services; }
public static void AddImplementServices(this IServiceCollection services) { //Identity services.AddScoped<UserStore>(); services.AddScoped<UserManager<SysUser, int>, UserManager>(); //Security services.AddScoped<FunctionMapStore>(); services.AddScoped<EntityMapStore>(); //OAuth //services.AddScoped<ClientStore>(); }
/// <summary> /// Installs RouteJs services for this website. /// </summary> /// <param name="services">Service collection to register routes in</param> /// <returns>The service collection</returns> public static IServiceCollection AddRouteJs(this IServiceCollection services) { services.AddSingleton<IRouteJsConfiguration>(provider => provider.GetRequiredService<IOptions<RouteJsConfiguration>>().Value); services.AddSingleton<IRouteFetcher, TemplateRouteFetcher>(); services.AddSingleton<IRouteFetcher, AttributeRouteFetcher>(); services.AddSingleton<IConstraintsProcessor, ConstraintsProcessor>(); services.AddSingleton<IRouteTemplateParser, RouteTemplateParser>(); services.AddSingleton<IRouteFilter, DefaultRouteFilter>(); services.AddScoped<IRouteJsHelper, RouteJsHelper>(); services.AddScoped<IRouteJs, RouteJs>(); return services; }
public static void AddCoreServices(this IServiceCollection services) { services.AddScoped<CategoryService>() .AddScoped<AccountService>() .AddScoped<UserService>() .AddScoped<TopicService>() .AddScoped<CommentService>() .AddScoped<UserVoteService>() .AddScoped<UserCollectService>() .AddScoped<MessageService>(); services.AddScoped<ClientManager>(); }
/// <summary> /// Adds EventBus and related types. /// </summary> /// <param name="services"></param> /// <returns></returns> public static IServiceCollection AddEventBus(this IServiceCollection services) { var eventHandlerClassTypes = services .Select(x => x.ImplementationType) .Where(t => t != null && typeof (IEventHandler).IsAssignableFrom(t) && t.GetTypeInfo().IsClass) .ToArray(); foreach (var handlerClassType in eventHandlerClassTypes) { services.AddScoped(handlerClassType); // Register dynamic proxies to intercept direct calls if an IEventHandler is resolved, dispatching the call to // the event bus. foreach (var i in handlerClassType.GetInterfaces().Where(t => typeof(IEventHandler).IsAssignableFrom(t))) { services.AddScoped(i, serviceProvider => { var proxy = EventBusHelper.CreateProxy(i); proxy.EventBus = serviceProvider.GetService<IEventBus>(); return proxy; }); } } services.AddSingleton<IEventBusState>(serviceProvider => { var eventBusState = new EventBusState(); // Register any IEventHandler method in the event bus foreach (var eventHandlerClassType in eventHandlerClassTypes) { foreach (var handlerInterface in eventHandlerClassType.GetInterfaces().Where(x => typeof(IEventHandler).IsAssignableFrom(x))) { foreach (var interfaceMethod in handlerInterface.GetMethods()) { Func<IServiceProvider, IDictionary<string, object>, Task> d = (sp, parameters) => EventBusHelper.Invoke(sp, parameters, interfaceMethod, eventHandlerClassType); eventBusState.Add(handlerInterface.Name + "." + interfaceMethod.Name, d); } } } return eventBusState; }); services.AddScoped<IEventBus, DefaultEventBus>(); return services; }
public static void AddRepositoryRegistrations(this IServiceCollection serviceCollection) { serviceCollection.AddDataRetriverRegistrations(); serviceCollection.AddScoped<IProfileService, ProfileService>(); serviceCollection.AddScoped<IUserService, UserService>(); serviceCollection.AddScoped<IGroupService, GroupService>(); serviceCollection.AddScoped<IRepository<User>, BaseMySqlRepository<User>>(); serviceCollection.AddScoped<IRepository<Group>, BaseMySqlRepository<Group>>(); serviceCollection.AddProfileCommandsRegistrations(); serviceCollection.AddUserCommandsRegistrations(); serviceCollection.AddGroupCommandsRegistrations(); }
public static IServiceCollection AddOrchardMvc(this IServiceCollection services) { services .AddMvcCore(options => { options.Filters.Add(new ModelBinderAccessorFilter()); options.Filters.Add(typeof(AutoValidateAntiforgeryTokenAuthorizationFilter)); options.ModelBinderProviders.Insert(0, new CheckMarkModelBinderProvider()); }) .AddViews() .AddViewLocalization() .AddRazorViewEngine() .AddJsonFormatters(); services.AddScoped<IModelUpdaterAccessor, LocalModelBinderAccessor>(); services.AddTransient<IFilterProvider, DependencyFilterProvider>(); services.AddTransient<IApplicationModelProvider, ModuleAreaRouteConstraintApplicationModelProvider>(); services.Configure<RazorViewEngineOptions>(configureOptions: options => { var expander = new ModuleViewLocationExpander(); options.ViewLocationExpanders.Add(expander); var extensionLibraryService = services.BuildServiceProvider().GetService<IExtensionLibraryService>(); ((List<MetadataReference>)options.AdditionalCompilationReferences).AddRange(extensionLibraryService.MetadataReferences()); }); return services; }
public static void AddCustomBindings(this IServiceCollection services, IConfiguration configuration) { IMongoClient client = new MongoClient(configuration.Get("ConnectionString")); services.AddInstance<IMongoClient>(client); services.AddInstance<IMongoDatabase>(client.GetDatabase("VnextDB")); services.AddScoped<ITimesheetService, TimesheetService>(); }
public static IServiceCollection AddSmsService(this IServiceCollection serviceCollention, string appId, string appKey) { Args.NotNull(serviceCollention, nameof(serviceCollention)); serviceCollention.AddScoped<ISmsService>(services => new LCSmsService(appId, appKey)); return serviceCollention; }
public static IServiceCollection ConfigureDependencies(this IServiceCollection services, IConfigurationRoot configuration) { services.AddScoped<MyHealthDataInitializer>(); services.AddScoped<Office365HttpApi>(); services.AddScoped<IHealthReportsRepository, HealthReportsRepository>(); if (IsOffice365Enabled(configuration)) { services.AddScoped<IAppointmentsRepository, Office365AppointmentsRepository>(); } else { services.AddScoped<IAppointmentsRepository, LocalAppointmentsRepository>(); } return services; }
public static IServiceCollection AddRabbitMQQueueing(this IServiceCollection services, Action<RabbitMQOptions> setupAction = null) { services.AddOptions(); services.AddSingleton<IRabbitMQConnectionAccessor, RabbitMQConnectionAccessor>(); services.AddScoped<IBroker, RabbitMQBroker>(); services.AddScoped<IConsumer, RabbitMQConsumer>(); services.AddScoped<IPublisher, RabbitMQPublisher>(); services.AddScoped<IRemoteProcedureCallClient, RabbitMQRemoteProcedureCallClient>(); if (setupAction != null) { services.Configure(setupAction); } return services; }