public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory) { app.UseRouting(); app.UseGrpcWeb(); app.UseEndpoints(endpoints => { endpoints.MapGrpcService <DataService>().EnableGrpcWeb(); endpoints.MapHub <ConnectionsHub>("/connectionsHub"); endpoints.MapHub <ExecuteHub>("/executeHub", o => { o.LongPolling.PollTimeout = TimeSpan.MaxValue; }); }); IMiddleware cookieMiddleware = new CookieMiddleware(); IMiddleware loggingMiddleware = new LoggingMiddleware(loggerFactory); if (env.IsDevelopment()) { cookieMiddleware.Use(app); if (Program.Settings.LogRequests) { loggingMiddleware.Use(app); } app.UseDevelopmentMiddleware(); app.UseDeveloperExceptionPage(); } else { if (Program.Settings.LogRequests) { app.UseResourceMiddleware(cookieMiddleware, loggingMiddleware); } else { app.UseResourceMiddleware(cookieMiddleware); } } if (Program.Settings.LogPgCodeCommandNotice || Program.Settings.LogPgCodeDbCommands) { ConnectionManager.AddLoggers(loggerFactory); } if (Program.Settings.LogPgCodeCommandNotice) { ConnectionManager.AddNoticeHandlersToConnections(loggerFactory); } app.UseHttpsRedirection(); }