internal static NavigationService ConfigureNavigationService(this NavigationService navigationService)
        {
            navigationService.Configure(ViewModelPageKeys.MainViewModelKey, typeof(MainView));
            navigationService.Configure(ViewModelPageKeys.RegistrationViewModelKey, typeof(RegistrationView));

            return navigationService;
        }
Ejemplo n.º 2
0
        public static IContainer UseAssemblyRuleScanning(this IContainer container)
        {
            Assembly applicationServices = ApplicationServiceGenerator.Generate(typeof(Domain.Model._namespace).Assembly);

            var rules = new List<AssemblyScanningRule>
            {
                new AssemblyScanningRule(applicationServices),                                               //for application services
                new AssemblyScanningRule(typeof(Samples.Domain.Workflow._namespace).Assembly),                  //for workflow services
                new AssemblyScanningRule(typeof(Samples.View._namespace).Assembly),                  //for view handlers
                new AssemblyScanningRule(typeof(Samples.View.Querying._namespace).Assembly)                  //for query handlers
            };
            
            var typeProvider = new AssemblyTypesProvider(rules);
            container.Configure(expression => expression.For<IDispatcherTypesProvider>().Use(typeProvider).Singleton());
            
            var handlersProvider = new DefaultDispatcherHandlersProvider(typeProvider);
            container.Configure(expression => expression.For<IDispatcherHandlersProvider>().Use(handlersProvider).Singleton());

            var handlerActionsProvider = new DefaultDispatcherHandlerActionsProvider();
            container.Configure(expression => expression.For<IDispatcherHandlerActionsProvider>().Use(handlerActionsProvider).Singleton());

            var priorityProvider = new DefaultDispatcherPriorityProvider();

            var subscriptionManager = new DispatcherSubscriptionsManager(
                handlersProvider,
                new DefaultDispatcherHandlerDescriptorsBuilder(priorityProvider),
                new DefaultDispatcherHandlerActionDescriptorsBuilder(handlerActionsProvider, priorityProvider)
            );
            container.Configure(expression => expression.For<DispatcherSubscriptionsManager>().Use(subscriptionManager).Singleton());

            return container;
        }
        public static IServiceCollection AddMvcControlsToolkitControls(this IServiceCollection services, 
            Action<MvcControlsToolkitOptions> setupAction = null,
            Type defaultTagHelpersProviderType=null, 
            ITagHelpersProvider defaultTagHelpersProviderInstance=null
        )
        {
            services.AddLocalization();
            if (defaultTagHelpersProviderType == null)
            {
                defaultTagHelpersProviderInstance = null;
                defaultTagHelpersProviderType = typeof(DefaultServerControlsTagHelpersProvider);
            }
            if (defaultTagHelpersProviderInstance == null)
                defaultTagHelpersProviderInstance = Activator.CreateInstance(defaultTagHelpersProviderType) as ITagHelpersProvider;
            services.AddTagHelpersProvider(defaultTagHelpersProviderType, defaultTagHelpersProviderInstance);

            services.AddMvcControlsToolkit((o) => { o.DefaultProvider = defaultTagHelpersProviderInstance; });
            
            services.Configure<RazorViewEngineOptions>(options =>
                 {
                     options.FileProviders.Add(
                       new EmbeddedFileProvider(typeof(ControlsDIExtensions).GetTypeInfo().Assembly,
                       "MvcControlsToolkit.ControlsCore"));
                  }
            );
            if (setupAction != null)
                services.Configure(setupAction);
            return services;
        }
        public static void AddSwaggerGen(
            this IServiceCollection services,
            Action<SwaggerGenOptions> setupAction = null)
        {
            services.Configure<MvcOptions>(c =>
                c.Conventions.Add(new SwaggerApplicationConvention()));

            services.Configure(setupAction ?? (opts => { }));

            services.AddSingleton(CreateSwaggerProvider);
        }
Ejemplo n.º 5
0
        private static void ConfigureServeGoal(this StateMachine<State, Trigger> machine)
        {
            machine.Configure(State.ServeGoal).
                PermitReentry(Trigger.Work).
                Permit(Trigger.Feed, State.FeedGoal).
                Permit(Trigger.FleeAway, State.RetreatGoal).
                Permit(Trigger.Fight, State.AttackGoal).

                PermitDynamic(Trigger.DoSomething, () => ZergCharacter.GOALS_LOOKUP_TABLE[ZergCharacter.RND.Sample()]);

            machine.Configure(State.SeekStrategy).SubstateOf(State.ServeGoal);
        }
        public static void AddSwagger(
            this IServiceCollection serviceCollection,
            Action<SwaggerOptions> configure = null)
        {
            serviceCollection.Configure<MvcOptions>(c =>
                c.Conventions.Add(new SwaggerApplicationConvention()));

            serviceCollection.Configure(configure ?? ((options) => {}));

            serviceCollection.AddTransient(GetSchemaRegistry);
            serviceCollection.AddTransient(GetSwaggerProvider);
        }
Ejemplo n.º 7
0
 public static void AddDaniel15Config(this IServiceCollection services, IConfiguration config)
 {
     services.AddSingleton(_ => config);
     services.Configure<SiteConfiguration>(config.GetSection("Site"));
     services.Configure<GalleryConfiguration>(config.GetSection("Gallery"));
     services.AddSingleton<ISiteConfiguration>(
         provider => provider.GetRequiredService<IOptions<SiteConfiguration>>().Value
     );
     services.AddSingleton<IGalleryConfiguration>(
         provider => provider.GetRequiredService<IOptions<GalleryConfiguration>>().Value
     );
 }
        public static void AddBrickPile(this IServiceCollection services)
        {
            _serviceProvider = services.BuildServiceProvider();

            services.AddMvc().ConfigureApplicationPartManager(manager =>
            {
                var feature = new ControllerFeature();
                manager.PopulateFeature(feature);
                services.AddSingleton<IControllerMapper>(new ControllerMapper(feature));
            });

            services.AddRouting(options =>
            {
                options.AppendTrailingSlash = true;
                options.LowercaseUrls = true;
            });

            services.Configure<MvcOptions>(options =>
            {
                options.ModelBinderProviders.Insert(0, new DefaultModelBinderProvider(DocumentStore));
                options.Filters.Add(typeof(PublishedFilterAttribute), 1);
                options.Filters.Add(typeof(AuthorizeFilterAttribute), 2);
            });

            services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            services.AddSingleton(DocumentStore);
            services.AddTransient<IRouteResolverTrie>(provider => new RouteResolverTrie(provider.GetService<IDocumentStore>()));
            services.AddTransient<IBricsContextAccessor>(provider => new BricsContextAccessor(provider.GetService<IHttpContextAccessor>(), provider.GetService<IDocumentStore>()));
        }
        public static IServiceCollection AddCloudscribeNavigation(
            this IServiceCollection services,
            IConfiguration configuration = null)
        {
            if(configuration != null)
            {
                //services.Configure<NavigationOptions>(configuration.GetSection("NavigationOptions"));
                services.Configure<NavigationOptions>(configuration);
                //services.AddSingleton<IConfigureOptions<NavigationOptions>>(new ConfigureFromConfigurationOptions<NavigationOptions>(configuration));
            }
            else
            {
                // does this add IOptions?
                services.TryAddSingleton<NavigationOptions, NavigationOptions>();
            }

            services.TryAddSingleton<IActionContextAccessor, ActionContextAccessor>();
            services.TryAddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            services.TryAddScoped<ITreeCacheKeyResolver, DefaultCacheKeyResolver>();
            services.TryAddScoped<ITreeCache, MemoryTreeCache>();
            
            services.TryAddScoped<INavigationTreeBuilder, XmlNavigationTreeBuilder>();
            services.TryAddScoped<NavigationTreeBuilderService, NavigationTreeBuilderService>();
            services.TryAddScoped<INodeUrlPrefixProvider, DefaultNodeUrlPrefixProvider>();
            services.TryAddScoped<INavigationNodePermissionResolver, NavigationNodePermissionResolver>();

            return services;
        }
 public static IServiceCollection ConfigureBattlenetAuthentication(
     this IServiceCollection services,
     Action<BattlenetAuthenticationOptions> configure,
     string optionsName)
 {
     return services.Configure(configure, optionsName);
 }
 public static IServiceCollection ConfigureBattlenetAuthentication(
     this IServiceCollection services,
     IConfiguration config,
     string optionsName)
 {
     return services.Configure<BattlenetAuthenticationOptions>(config, optionsName);
 }
        public static IServiceCollection ConfigureDataContext(this IServiceCollection services, Configuration configuration)
        {
            //If this type is present - we're on mono 
            var runningOnMono = Type.GetType("Mono.Runtime") != null;

            services.AddEntityFramework(configuration)
                .AddStore(runningOnMono)
                .AddDbContext<MyShuttleContext>(options =>
                {
                    if (runningOnMono)
                    {
                        options.UseInMemoryStore();
                    }
                    else
                    {
                        options.UseSqlServer(configuration.Get("EntityFramework:MyShuttleContext:ConnectionstringKey"));
                    }
                });

            // Configure DbContext
            services.Configure<MyShuttleDbContextOptions>(options =>
            {
                options.DefaultAdminUserName = configuration.Get("DefaultAdminUsername");
                options.DefaultAdminPassword = configuration.Get("DefaultAdminPassword");
            });

            return services;
        }
 public static IServiceCollection BuildConfiguration(this IServiceCollection services,
     IConfigurationRoot configuration)
 {
     AssemblyApi.AssemblyManager.Initialize(configuration);
     services.Configure<ServerOptions>(configuration.GetSection("ServerOptions"));
     return services;
 }
Ejemplo n.º 14
0
 public static IServiceCollection ConfigureMvcOptions(this IServiceCollection collection)
 {
     var logger = new Logger<ExceptionContext>(new LoggerFactory());
     collection.Configure<MvcOptions>(
         options => { options.Filters.Add(new ExceptionFilter(logger, new JsonExceptionPage())); });
     return collection;
 }
        /// <summary>
        /// Adds services required for application localization.
        /// </summary>
        /// <param name="services">The <see cref="IServiceCollection"/> to add the services to.</param>
        /// <param name="setupAction">An action to configure the <see cref="LocalizationOptions"/>.</param>
        /// <returns>The <see cref="IServiceCollection"/>.</returns>
        public static IServiceCollection AddSqlLocalization(
            this IServiceCollection services,
            Action<SqlLocalizationOptions> setupAction)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }

            services.TryAdd(new ServiceDescriptor(
                typeof(IStringExtendedLocalizerFactory),
                typeof(SqlStringLocalizerFactory),
                ServiceLifetime.Singleton));
            services.TryAdd(new ServiceDescriptor(
                typeof(IStringLocalizerFactory),
                typeof(SqlStringLocalizerFactory),
                ServiceLifetime.Singleton));
            services.TryAdd(new ServiceDescriptor(
                typeof(IStringLocalizer),
                typeof(SqlStringLocalizer),
                ServiceLifetime.Singleton));

            if (setupAction != null)
            {
                services.Configure(setupAction);
            }
            return services;
        }
        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 AddCloudFoundry(this IServiceCollection serviceCollection,
     IConfigurationRoot configuration)
 {
     string vcapRaw = configuration.GetSection("VCAP_SERVICES").Value;
     Dictionary<String, BoundService> results = new Dictionary<string, BoundService>();
     VcapParser parser = new VcapParser();
     
     if (!string.IsNullOrEmpty(vcapRaw))
     {
         try
         {
             results = parser.ParseConfigurationForVcap(vcapRaw);
         }
         catch (Exception ex)
         {
             throw new ArgumentException("VCAP_SERVICES", "Could not parse VCAP_SERVICES environment variable or other substitute configuration. Cannot enable cloud foundry configuration.", ex);
         }
     }
    
     serviceCollection.Configure<CloudFoundryBoundServiceOptions>(options =>
     {
         options.BoundServices = results;
     });
     
     return serviceCollection;
 }
Ejemplo n.º 18
0
        public static CellTag AddCell(this ICellBuilder builder, GrammarTag grammar, Cell cell)
        {
            CellTag tag = grammar.AddCell(cell, builder.TagName);
            builder.Configure(cell, tag);

            return tag;
        }
        /// <summary>
        /// Adds services required for application localization.
        /// </summary>
        /// <param name="services">The <see cref="IServiceCollection"/> to add the services to.</param>
        /// <param name="setupAction">An action to configure the <see cref="LocalizationOptions"/>.</param>
        /// <returns>The <see cref="IServiceCollection"/>.</returns>
        public static IServiceCollection AddLocalization(
            this IServiceCollection services,
            Action<LocalizationOptions> setupAction)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }

            services.TryAdd(new ServiceDescriptor(
                typeof(IStringLocalizerFactory),
                typeof(ResourceManagerStringLocalizerFactory),
                ServiceLifetime.Singleton));
            services.TryAdd(new ServiceDescriptor(
                typeof(IStringLocalizer<>),
                typeof(StringLocalizer<>),
                ServiceLifetime.Transient));

            if (setupAction != null)
            {
                services.Configure(setupAction);
            }
            services.AddOptions();
            return services;
        }
Ejemplo n.º 20
0
        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 IServiceCollection AddPomeloLocalization(this IServiceCollection self, Action<MemoryCultureSet> InitCultureSource = null)
 {
     var set = new MemoryCultureSet();
     InitCultureSource?.Invoke(set);
     self.AddMemoryCache();
     self.AddContextAccessor();
     self.AddSingleton<ICultureSet>(set);
     self.AddScoped<ICultureProvider, DefaultCultureProvider>();
     self.AddScoped<IStringReader, DefaultStringReader>();
     self.AddSingleton<ITranslator, NonTranslator>();
     self.AddSingleton<ITranslatedCaching, MemoryTranslatedCaching>();
     self.AddScoped<ITranslatorDisabler, DefaultTranslatorDisabler>();
     self.AddScoped<IEntityStateListener, LocalizationEntityStateListener>();
     self.Configure<MvcOptions>(x => x.Filters.Add(typeof(LocalizationFilter)));
     self.Configure<MvcOptions>(x => x.Filters.Add(typeof(DbContextModelBindingFilter)));
     return self;
 }
        /// <summary>
        ///		Configure NHibernate from a specified session-factory.
        /// </summary>
        /// <param name="config"></param>
        /// <param name="textReader">The XmlReader containing the hibernate-configuration.</param>
        /// <param name="factoryName">Name value of the desired session-factory.</param>
        /// <returns></returns>
        public static Configuration Configure(this Configuration config, XmlReader textReader, string factoryName)
        {
            // Load Configuration XML
            XmlDocument doc = new XmlDocument();
            doc.Load(textReader);

            return config.Configure(PrepareConfiguration(doc, factoryName));
        }
        /// <summary>
        ///		Configure NHibernate from a specified session-factory.
        /// </summary>
        /// <param name="config"></param>
        /// <param name="fileName">System location of '.cfg.xml' configuration file.</param>
        /// <param name="factoryName">Name value of the desired session-factory.</param>
        /// <returns></returns>
        public static Configuration Configure(this Configuration config, string fileName, string factoryName)
        {
            // Load Configuration XML
            XmlDocument doc = new XmlDocument();
            doc.Load(fileName);

            return config.Configure(PrepareConfiguration(doc, factoryName));
        }
Ejemplo n.º 24
0
        public static IServiceCollection AddCloudscribeCore(this IServiceCollection services, IConfigurationRoot configuration)
        {
            services.TryAddSingleton<IHttpContextAccessor, HttpContextAccessor>();

            services.Configure<MultiTenantOptions>(configuration.GetSection("MultiTenantOptions"));

            services.Configure<SiteConfigOptions>(configuration.GetSection("SiteConfigOptions"));
            services.Configure<UIOptions>(configuration.GetSection("UIOptions"));
            services.Configure<CkeditorOptions>(configuration.GetSection("CkeditorOptions"));
            services.Configure<CachingSiteResolverOptions>(configuration.GetSection("CachingSiteResolverOptions"));
            
           
            //services.AddMultitenancy<SiteSettings, SiteResolver>();
            
            services.AddMultitenancy<SiteSettings, CachingSiteResolver>();
            services.AddScoped<CacheHelper, CacheHelper>();
            services.AddScoped<SiteManager, SiteManager>();
            services.AddScoped<GeoDataManager, GeoDataManager>();
            services.AddScoped<SystemInfoManager, SystemInfoManager>();
            services.AddScoped<IpAddressTracker, IpAddressTracker>();

            services.AddScoped<SiteDataProtector>();
            // timezone localization from NodaTime
            services.AddCloudscribeCommmon();
            services.AddScoped<ITimeZoneIdResolver, RequestTimeZoneIdResolver>();

            services.AddCloudscribePagination();

            services.AddScoped<IVersionProviderFactory, VersionProviderFactory>();
            services.AddScoped<IVersionProvider, CloudscribeCoreVersionProvider>();

            services.AddTransient<IEmailTemplateService, HardCodedEmailTemplateService>();
            services.AddTransient<ISiteMessageEmailSender, SiteEmailMessageSender>();
            //services.AddTransient<ISiteMessageEmailSender, FakeSiteEmailSender>();
            
            services.AddTransient<ISmsSender, SiteSmsSender>();

            services.AddSingleton<IThemeListBuilder, SiteThemeListBuilder>();
            services.AddSingleton<IRazorViewEngine, CoreViewEngine>();

            services.AddScoped<INodeUrlPrefixProvider, FolderTenantNodeUrlPrefixProvider>();
            services.AddCloudscribeNavigation(configuration);

            return services;
        }
    public static IServiceCollection AddRaygun(this IServiceCollection services, IConfiguration configuration, RaygunMiddlewareSettings middlewareSettings)
    {
      services.Configure<RaygunSettings>(configuration.GetSection("RaygunSettings"));

      services.AddTransient(_ => middlewareSettings.ClientProvider ?? new DefaultRaygunAspNetCoreClientProvider());
      services.AddTransient(_ => middlewareSettings);

      return services;
    }
    public static IServiceCollection AddRaygun(this IServiceCollection services, IConfigurationRoot configuration)
    {
      services.Configure<RaygunSettings>(configuration.GetSection("RaygunSettings"));

      services.AddTransient<IRaygunAspNetCoreClientProvider>(_ => new DefaultRaygunAspNetCoreClientProvider());
      services.AddSingleton<RaygunMiddlewareSettings>();

      return services;
    }
Ejemplo n.º 27
0
        public static IServiceCollection AddAuthentication(this IServiceCollection services, IConfiguration configuration)
        {
            services.Configure<GoogleAuthSettings>(configuration.GetSection("GoogleAuthSettings"));
            services.Configure<MicrosoftAuthSettings>(configuration.GetSection("MicrosoftAuthSettings"));
            services.AddSingleton<AuthManager>();

            var policy = new AuthorizationPolicyBuilder()
                .RequireClaim("dg:org")
                .RequireClaim("dg:role")
                .Build();

            services.AddAuthorization(options =>
                {
                    options.DefaultPolicy = policy;
                });
                
            return services;
        }
        public static GlimpseAgentServiceCollectionBuilder RunningAgentWeb(this GlimpseServiceCollectionBuilder services, Action<GlimpseAgentOptions> setupAction)
        {
            if (setupAction != null)
            {
                services.Configure(setupAction);
            }

            return new GlimpseAgentServiceCollectionBuilder(services);
        }
        public static IServiceCollection AddFacebookSocial(this IServiceCollection services, Action<FacebookOptions> options = null)
        {
            if (options != null)
            {
                services.Configure(options);
            }

            return services.AddScoped<ISocialGraph, FacebookGraph>();
        }
 public static IServiceCollection ConfigureShell(
     this IServiceCollection services,
     string shellLocation)
 {
     return services.Configure<ShellOptions>(options =>
     {
         options.Location = shellLocation;
     });
 }