private Task WriteRelay(HttpContext context) { string[] segments = context.Request.Path.GetSegments(); //if (segments.Length < 2) // return Relayer.WriteProxyPage(context); #if DEBUG //InjectUri(segments); #endif Relayer relayer = null; switch (segments[0]) { case "dlx": relayer = decoderRelayer; break; case "compress": relayer = compressRelayer; break; case "cache-info": relayer = cacheInfoRelayer; break; case "cache-delete": relayer = cacheDeleteRelayer; break; default: relayer = proxyRelayer; break; } return(relayer.WriteRelayAsync(segments, context)); }
private Task RelayPath(PathString requestPath, HttpContext context) { if (requestPath == null || !requestPath.HasValue || requestPath.Value == "/") { return(Relayer.WriteProxyPage(context)); } else { return(WriteRelay(context)); } }