public static SystemExpiration Instance(DateTime?expiration, IConfiguration configuration) { if (instance == null) { instance = new SystemExpiration(); if (expiration != null) { instance.Expiration = GetExpiration(configuration); } } return(instance); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseDatabaseErrorPage(); } else { app.UseExceptionHandler("/Home/Error"); app.UseHsts(); } DateTime expiration = DateTime.Now.AddDays(1); app.Use(async(context, next) => { Console.WriteLine("Valitating Expiration System"); await Task.Run(() => SystemExpiration.Instance(expiration, Configuration)); await next(); Console.WriteLine("Finalizing Valitating Expiration System"); }); app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseCookiePolicy(); app.UseAuthentication(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); }