public APIRoutingResult DetectRoutingMatch(APIInvocationContext context) { var routeParameters = TryMatch(context.Request); if (routeParameters == null) { return(null); } return(new APIRoutingResult { Route = this as IAPIRoute, Values = routeParameters }); }
public async Task HandleRequest(APIInvocationContext context, IAPIResponder responder) { foreach (var step in steps) { var result = await step(context, responder); switch (result.CallEffect) { case APIInvocationEffect.Done: break; case APIInvocationEffect.ContinueProcessing: continue; case APIInvocationEffect.ReturnResponse: context.Response.StatusCode = result.StatusCode; context.Response.Content = result.Content; break; } } }