private void RedirectResponse(IHttpResponse httpResponse, IResponseStatusCodeResolver responseStatusCodeResolver, string newUrl)
        {
            var location   = newUrl;
            var statusCode = responseStatusCodeResolver.GetHttpResponseStatusCode(RedirectRule.RedirectType);

            httpResponse.Redirect(location, statusCode);
        }
 public void Execute(Uri request, IHttpResponse httpResponse, IUrlResolver contentUrlResolver,
                     IResponseStatusCodeResolver responseStatusCodeResolver)
 {
     // Null object pattern
 }
        public void Execute(Uri request, IHttpResponse response, IUrlResolver contentUrlResolver, IResponseStatusCodeResolver responseStatusCodeResolver)
        {
            var newUrl = RedirectRule.ContentId != null
                ? GetPathFromContentId(contentUrlResolver, request)
                    : GetPathWithoutContentId(request);

            RedirectResponse(response, responseStatusCodeResolver, newUrl);
        }
 public RedirectBuilder WithHttp_1_1_ResponseStatusCodeResolver(out IResponseStatusCodeResolver responseStatusCodeResolver)
 {
     responseStatusCodeResolver = new Http_1_1_ResponseStatusCodeResolver();
     return(this);
 }