/// <summary> /// Adds a route to this configuration /// </summary> /// <returns>The server configuration.</returns> /// <param name="route">The expression used to pre-filter requests before invoking the handler.</param> /// <param name="handler">The handler function that will execute the operation.</param> public ServerConfig AddRoute(string route, HttpHandlerDelegate handler) { if (handler == null) { throw new ArgumentNullException(nameof(handler)); } return(AddRoute(route, new Handler.FunctionHandler(handler))); }
public DynamicResourceHandler(HttpHandlerDelegate method, HttpDynamicResourceAttribute resource) : base(resource) { if (method == null) { throw new ArgumentNullException(nameof(method)); } this.method = method; }
/// <inheritdoc/> public TimeSpan Create(string name, out HttpMessageHandler handler) { var resource = name == HttpHandlerFactory.DefaultResourceId ? null : name; #pragma warning disable IDE0067 // Dispose objects before losing scope var del = new HttpHandlerDelegate(new HttpTunnelClientHandler(this), #pragma warning restore IDE0067 // Dispose objects before losing scope resource, _handlers.Where(h => h.IsFor?.Invoke(resource) ?? true), null, _logger); handler = del; return(del.MaxLifetime); }
private HttpHandlerDelegate GetHttpHandler(JancyExpressRoutingConfiguration routingConfiguration, JancyExpressScopedRoutingConfiguration scopedRoutingConfiguration, JancyExpressGlobalRoutingConfiguration globalRoutingConfiguration, IServiceProvider serviceProvider, HttpRequest request, HttpResponse response, RouteData routeData) { HttpHandlerDelegate httpHandler = () => { var handler = serviceProvider.GetService <IHttpHandler>(routingConfiguration.HttpHandlerType); return(handler.Handle(request, response, routeData)); }; var httpHandlerMiddlewares = GetHttpHandlerMiddlewares(routingConfiguration.HttpHandlerMiddlewareTypes, serviceProvider) .Concat(GetHttpHandlerMiddlewares(scopedRoutingConfiguration.HttpHandlerMiddlewareTypes, serviceProvider)) .Concat(GetHttpHandlerMiddlewares(globalRoutingConfiguration.HttpHandlerMiddlewareTypes, serviceProvider)); foreach (var middleware in httpHandlerMiddlewares) { var previous = httpHandler; httpHandler = () => middleware.Handle(request, response, routeData, previous); } return(httpHandler); }
public void Get(string path, HttpHandlerDelegate handler) { _handlers[path] = handler; }
public Task Handle(HttpRequest httpRequest, HttpResponse httpResponse, RouteData routeData, HttpHandlerDelegate next) => Task.CompletedTask;
public DynamicResourceHandler(HttpHandlerDelegate method, bool isCached) : base(isCached) { this.method = method ?? throw new ArgumentNullException(nameof(method)); }
public WebServer(HttpHandlerDelegate requestHandler) { this.requestHandler = requestHandler; }
public async Task Handle(HttpRequest httpRequest, HttpResponse httpResponse, RouteData routeData, HttpHandlerDelegate next) { _jancyLogger.LogInfo(await GetRequestLogging(httpRequest), "Request", httpRequest.HttpContext.TraceIdentifier); var originalResponseBodyStream = httpResponse.Body; var copyResponseBodyStream = new MemoryStream(); httpResponse.Body = copyResponseBodyStream; await next(); _jancyLogger.LogInfo(await GetResponseLogging(httpResponse, copyResponseBodyStream, originalResponseBodyStream), "Response", httpResponse.HttpContext.TraceIdentifier); }
public async Task Handle(HttpRequest request, HttpResponse response, RouteData routeData, HttpHandlerDelegate next) { try { await next(); } catch (Exception ex) { _logger.LogError(ex.ToString(), "Exception", request.HttpContext.TraceIdentifier); await response.WriteJson((int)HttpStatusCode.InternalServerError, new { ErrorMessage = "An unhandled exception occurred." }); } }
public Task Handle(HttpRequest httpRequest, HttpResponse httpResponse, RouteData routeData, HttpHandlerDelegate next) { //do some security related stuff on http level return(next()); }
/// <summary> /// Initializes a new instance of the <see cref="T:Ceen.Httpd.Handler.FunctionHandler"/> class. /// </summary> /// <param name="handler">The handler to invoke.</param> public FunctionHandler(HttpHandlerDelegate handler) { m_handler = handler; }