Esempio n. 1
0
 public Controller(ServiceFacade.Controller context)
 {
     _config              = context.Config;
     _pathResolver        = context.PathResolver;
     _userContextProvider = context.UserContextProvider;
     _siteLookupService   = context.SiteLookupService;
 }
Esempio n. 2
0
 public UserContextProvider(IHttpContextAccessor httpContextAccessor,
                            SiteLookupService siteLookupService)
 {
     _httpContextAccessor = Require.IsNotNull(httpContextAccessor,
                                              nameof(httpContextAccessor));
     _siteLookupService = Require.IsNotNull(siteLookupService, nameof(siteLookupService));
 }
Esempio n. 3
0
 protected Controller(ServiceFacade.Controller context)
 {
     _config              = context.Config;
     _dateTimeProvider    = context.DateTimeProvider;
     _pathResolver        = context.PathResolver;
     _userContextProvider = context.UserContextProvider;
     _siteLookupService   = context.SiteLookupService;
 }
 public SiteTagHelper(IUserContextProvider userContextProvider,
                      SiteLookupService siteLookupService)
 {
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
 }
Esempio n. 5
0
 public SiteTagHelper(IUrlHelperFactory urlHelperFactory,
                      IUserContextProvider userContextProvider,
                      SiteLookupService siteLookupService)
 {
     _urlHelperFactory    = Require.IsNotNull(urlHelperFactory, nameof(urlHelperFactory));
     _userContextProvider = Require.IsNotNull(userContextProvider,
                                              nameof(userContextProvider));
     _siteLookupService = Require.IsNotNull(siteLookupService, nameof(siteLookupService));
 }
Esempio n. 6
0
 public SiteFilter(ILogger <SiteFilter> logger,
                   SiteLookupService siteLookupService,
                   IUserContextProvider userContextProvider)
 {
     _logger            = logger ?? throw new ArgumentNullException(nameof(logger));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
 }
Esempio n. 7
0
 public UserContextProvider(ILogger <UserContextProvider> logger,
                            IHttpContextAccessor httpContextAccessor,
                            SiteLookupService siteLookupService)
 {
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
     _httpContextAccessor = httpContextAccessor
                            ?? throw new ArgumentNullException(nameof(httpContextAccessor));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
 }
Esempio n. 8
0
 public SocialTagHelper(
     IOptions <RequestLocalizationOptions> localizationOptions,
     SiteLookupService siteLookupService,
     IUserContextProvider userContextProvider)
 {
     _localizationOptions = localizationOptions
                            ?? throw new ArgumentNullException(nameof(localizationOptions));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
 }
Esempio n. 9
0
 protected Controller(ServiceFacade.Controller context)
 {
     if (context == null)
     {
         throw new ArgumentNullException(nameof(context));
     }
     _config              = context.Config;
     _dateTimeProvider    = context.DateTimeProvider;
     _pathResolver        = context.PathResolver;
     _userContextProvider = context.UserContextProvider;
     _sharedLocalizer     = context.SharedLocalizer;
     _siteLookupService   = context.SiteLookupService;
 }
Esempio n. 10
0
 public Controller(
     AutoMapper.IMapper mapper,
     IConfigurationRoot config,
     IPathResolver pathResolver,
     IUserContextProvider userContextProvider,
     SiteLookupService siteLookupService)
 {
     Mapper              = Require.IsNotNull(mapper, nameof(mapper));
     Config              = Require.IsNotNull(config, nameof(config));
     PathResolver        = Require.IsNotNull(pathResolver, nameof(pathResolver));
     UserContextProvider = Require.IsNotNull(userContextProvider,
                                             nameof(userContextProvider));
     SiteLookupService = Require.IsNotNull(siteLookupService, nameof(siteLookupService));
 }
 public SiteFilter(ILogger <SiteFilter> logger,
                   IDistributedCache cache,
                   IConfiguration config,
                   IPathResolver pathResolver,
                   SiteLookupService siteLookupService,
                   IUserContextProvider userContextProvider)
 {
     _logger            = logger ?? throw new ArgumentNullException(nameof(logger));
     _cache             = cache ?? throw new ArgumentNullException(nameof(cache));
     _config            = config ?? throw new ArgumentNullException(nameof(config));
     _pathResolver      = pathResolver ?? throw new ArgumentNullException(nameof(pathResolver));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
 }
 public InfoLinksTagHelper(IStringLocalizer <Resources.Shared> sharedLocalizer,
                           IUrlHelperFactory urlHelperFactory,
                           PageService pageService,
                           SiteLookupService siteLookupService,
                           UserService userService)
 {
     _urlHelperFactory = urlHelperFactory
                         ?? throw new ArgumentNullException(nameof(urlHelperFactory));
     _sharedLocalizer = sharedLocalizer
                        ?? throw new ArgumentNullException(nameof(sharedLocalizer));
     _pageService = pageService
                    ?? throw new ArgumentNullException(nameof(pageService));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userService = userService ?? throw new ArgumentNullException(nameof(userService));
 }
 public ServiceFacade(CommandLineApplication app,
                      IConfiguration config,
                      IHttpContextAccessor httpContextAccessor,
                      IUserContextProvider userContextProvider,
                      AuthenticationService authenticationService,
                      SiteLookupService siteLookupService,
                      UserService userService)
 {
     App    = app ?? throw new ArgumentNullException(nameof(app));
     Config = config ?? throw new ArgumentNullException(nameof(config));
     HttpContextAccessor = httpContextAccessor
                           ?? throw new ArgumentNullException(nameof(httpContextAccessor));
     AuthenticationService = authenticationService
                             ?? throw new ArgumentNullException(nameof(authenticationService));
     SiteLookupService = siteLookupService
                         ?? throw new ArgumentNullException(nameof(siteLookupService));
     UserService = userService ?? throw new ArgumentNullException(nameof(userService));
 }
Esempio n. 14
0
 public SiteFilterAttribute(ILogger <SiteFilterAttribute> logger,
                            IDistributedCache cache,
                            IConfiguration config,
                            IPathResolver pathResolver,
                            SiteLookupService siteLookupService,
                            IUserContextProvider userContextProvider,
                            IOptions <RequestLocalizationOptions> l10nOptions,
                            UserService userService)
 {
     _logger            = logger ?? throw new ArgumentNullException(nameof(logger));
     _cache             = cache ?? throw new ArgumentNullException(nameof(cache));
     _config            = config ?? throw new ArgumentNullException(nameof(config));
     _pathResolver      = pathResolver ?? throw new ArgumentNullException(nameof(pathResolver));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
     _l10nOptions = l10nOptions ?? throw new ArgumentNullException(nameof(l10nOptions));
     _userService = userService ?? throw new ArgumentNullException(nameof(userService));
 }
 public MissionControlFilter(ILogger <MissionControlFilter> logger,
                             IUserContextProvider userContextProvider,
                             MailService mailService,
                             PerformerSchedulingService performerSchedulingService,
                             QuestionnaireService questionnaireService,
                             SiteLookupService siteLookupService,
                             UserService userService)
 {
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
     _userContextProvider = userContextProvider
                            ?? throw new ArgumentNullException(nameof(userContextProvider));
     _mailService = mailService ?? throw new ArgumentNullException(nameof(mailService));
     _performerSchedulingService = performerSchedulingService
                                   ?? throw new ArgumentNullException(nameof(performerSchedulingService));
     _questionnaireService = questionnaireService
                             ?? throw new ArgumentNullException(nameof(questionnaireService));
     _siteLookupService = siteLookupService
                          ?? throw new ArgumentNullException(nameof(siteLookupService));
     _userService = userService ?? throw new ArgumentNullException(nameof(userService));
 }
Esempio n. 16
0
 public Controller(
     AutoMapper.IMapper mapper,
     IConfiguration config,
     IDateTimeProvider dateTimeProvider,
     IPathResolver pathResolver,
     IUserContextProvider userContextProvider,
     IStringLocalizer <Resources.Shared> sharedLocalizer,
     SiteLookupService siteLookupService)
 {
     Mapper           = mapper ?? throw new ArgumentNullException(nameof(mapper));
     Config           = config ?? throw new ArgumentNullException(nameof(config));
     DateTimeProvider = dateTimeProvider
                        ?? throw new ArgumentNullException(nameof(dateTimeProvider));
     PathResolver        = pathResolver ?? throw new ArgumentNullException(nameof(pathResolver));
     UserContextProvider = userContextProvider
                           ?? throw new ArgumentNullException(nameof(userContextProvider));
     SharedLocalizer = sharedLocalizer
                       ?? throw new ArgumentNullException(nameof(sharedLocalizer));
     SiteLookupService = siteLookupService
                         ?? throw new ArgumentNullException(nameof(siteLookupService));
 }
Esempio n. 17
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app,
                              IHostingEnvironment env,
                              ILoggerFactory loggerFactory,
                              IPathResolver pathResolver,
                              RoleService roleService,
                              SiteLookupService siteLookupService)
        {
            loggerFactory.AddSerilog();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseBrowserLink();
            }
            else
            {
                app.UseStatusCodePagesWithReExecute("/Error/Index/{0}");
            }

            var dbContext = app.ApplicationServices.GetService <Data.Context>();

            try
            {
                var pending = dbContext.GetPendingMigrations();
                if (pending != null && pending.Count() > 0)
                {
                    Log.Logger.Warning($"Applying {pending.Count()} database migrations, last is: {pending.Last()}");
                }
            }
            catch (Exception ex)
            {
                Log.Logger.Error($"Error looking up migrations to perform: {ex.Message}");
            }
            dbContext.Migrate();
            Task.Run(() => siteLookupService.GetDefaultSiteIdAsync()).Wait();
            Task.Run(() => roleService.SyncPermissionsAsync()).Wait();

            app.UseRequestLocalization();

            app.UseResponseCompression();

            // configure static files with 7 day cache
            app.UseStaticFiles(new StaticFileOptions()
            {
                OnPrepareResponse = _ =>
                {
                    var headers          = _.Context.Response.GetTypedHeaders();
                    headers.CacheControl = new Microsoft.Net.Http.Headers.CacheControlHeaderValue()
                    {
                        MaxAge = TimeSpan.FromDays(7)
                    };
                }
            });

            string contentPath = pathResolver.ResolveContentFilePath();

            if (!Directory.Exists(contentPath))
            {
                try
                {
                    Directory.CreateDirectory(contentPath);
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Unable to create directory '{contentPath}' in {Directory.GetCurrentDirectory()}");
                    throw (ex);
                }
            }

            string pathString = pathResolver.ResolveContentPath();

            if (!pathString.StartsWith("/"))
            {
                pathString = "/" + pathString;
            }

            // configure /content with 7 day cache
            app.UseStaticFiles(new StaticFileOptions()
            {
                FileProvider      = new PhysicalFileProvider(contentPath),
                RequestPath       = new PathString(pathString),
                OnPrepareResponse = _ =>
                {
                    var headers          = _.Context.Response.GetTypedHeaders();
                    headers.CacheControl = new Microsoft.Net.Http.Headers.CacheControlHeaderValue()
                    {
                        MaxAge = TimeSpan.FromDays(7)
                    };
                }
            });

            app.UseSession();

            // set cookie authentication options
            var cookieAuthOptions = new CookieAuthenticationOptions
            {
                AuthenticationScheme  = Controllers.Authentication.SchemeGRACookie,
                LoginPath             = new PathString("/SignIn/"),
                AccessDeniedPath      = new PathString("/"),
                AutomaticAuthenticate = true,
                AutomaticChallenge    = true
            };

            // if there's a data protection path, set it up - for clustered/multi-server configs
            if (!string.IsNullOrEmpty(Configuration[ConfigurationKey.DataProtectionPath]))
            {
                string protectionPath = Configuration[ConfigurationKey.DataProtectionPath];
                cookieAuthOptions.DataProtectionProvider = DataProtectionProvider.Create(
                    new DirectoryInfo(Path.Combine(protectionPath, "cookies")));
            }

            app.UseCookieAuthentication(cookieAuthOptions);

            // sitePath is also referenced in GRA.Controllers.Filter.SiteFilter
            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: null,
                    template: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

                routes.MapRoute(
                    name: null,
                    template: "{sitePath}/Info/{stub}",
                    defaults: new { controller = "Info", action = "Index" },
                    constraints: new
                {
                    sitePath = new SiteRouteConstraint(app.ApplicationServices.GetRequiredService <Controllers.Base.ISitePathValidator>())
                });
                routes.MapRoute(
                    name: null,
                    template: "Info/{stub}",
                    defaults: new { controller = "Info", action = "Index" });

                routes.MapRoute(
                    name: null,
                    template: "{sitePath}/{controller}/{action}/{id?}",
                    defaults: new { controller = "Home", action = "Index" },
                    constraints: new
                {
                    sitePath = new SiteRouteConstraint(app.ApplicationServices.GetRequiredService <Controllers.Base.ISitePathValidator>())
                });
                routes.MapRoute(
                    name: null,
                    template: "{controller=Home}/{action=Index}/{id?}");
            });

            app.UseWebSockets(new WebSocketOptions
            {
                KeepAliveInterval = TimeSpan.FromSeconds(30)
            });

            app.Use(async(context, next) =>
            {
                if (context.WebSockets.IsWebSocketRequest)
                {
                    var handler = app.ApplicationServices.GetService <WebSocketHandler>();
                    await handler.Handle(context);
                }
                else
                {
                    await next();
                }
            });
        }
Esempio n. 18
0
 public SiteFilter(SiteLookupService siteLookupService)
 {
     _siteLookupService = Require.IsNotNull(siteLookupService, nameof(siteLookupService));
 }
Esempio n. 19
0
 public SitePathValidator(SiteLookupService siteLookupService)
 {
     _siteLookupService = Require.IsNotNull(siteLookupService, nameof(siteLookupService));
 }