diff --git a/src/Microsoft.AspNetCore.Rewrite/Rule.cs b/src/Microsoft.AspNetCore.Rewrite/IRule.cs similarity index 65% rename from src/Microsoft.AspNetCore.Rewrite/Rule.cs rename to src/Microsoft.AspNetCore.Rewrite/IRule.cs index b86d0e454d..60fcdb037a 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Rule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/IRule.cs @@ -4,17 +4,17 @@ namespace Microsoft.AspNetCore.Rewrite { /// - /// Represents an abstract rule. + /// Represents a rule. /// - public abstract class Rule + public interface IRule { /// /// Applies the rule. - /// Implementations of ApplyRule should set the value for - /// (defaults to ) + /// Implementations of ApplyRule should set the value for + /// (defaults to RuleResult.ContinueRules) /// /// - public abstract void ApplyRule(RewriteContext context); + void ApplyRule(RewriteContext context); } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/ApacheModRewriteRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/ApacheModRewriteRule.cs index 6fb201e12f..ffb907f304 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/ApacheModRewriteRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/ApacheModRewriteRule.cs @@ -6,7 +6,7 @@ using Microsoft.AspNetCore.Rewrite.Logging; namespace Microsoft.AspNetCore.Rewrite.Internal.ApacheModRewrite { - public class ApacheModRewriteRule : Rule + public class ApacheModRewriteRule : IRule { public UrlMatch InitialMatch { get; } public IList Conditions { get; } @@ -19,7 +19,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.ApacheModRewrite Actions = urlActions; } - public override void ApplyRule(RewriteContext context) + public virtual void ApplyRule(RewriteContext context) { // 1. Figure out which section of the string to match for the initial rule. var initMatchRes = InitialMatch.Evaluate(context.HttpContext.Request.Path, context); diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/FileParser.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/FileParser.cs index c2525f409f..d301a401a3 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/FileParser.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/FileParser.cs @@ -9,10 +9,10 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.ApacheModRewrite { public class FileParser { - public IList Parse(TextReader input) + public IList Parse(TextReader input) { string line; - var rules = new List(); + var rules = new List(); var builder = new RuleBuilder(); var lineNum = 0; diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/RuleBuilder.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/RuleBuilder.cs index bec58de1bc..e9bc6b36df 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/RuleBuilder.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/ApacheModRewrite/RuleBuilder.cs @@ -210,7 +210,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.ApacheModRewrite else { var last = flags.HasFlag(FlagType.End) || flags.HasFlag(FlagType.Last); - var termination = last ? RuleTermination.StopRules : RuleTermination.Continue; + var termination = last ? RuleResult.SkipRemainingRules : RuleResult.ContinueRules; _actions.Add(new RewriteAction(termination, pattern, queryStringAppend, queryStringDelete, escapeBackReference)); } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/DelegateRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/DelegateRule.cs index 60a670a7fc..ab8e75d1bf 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/DelegateRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/DelegateRule.cs @@ -5,7 +5,7 @@ using System; namespace Microsoft.AspNetCore.Rewrite.Internal { - public class DelegateRule : Rule + public class DelegateRule : IRule { private readonly Action _onApplyRule; @@ -13,6 +13,6 @@ namespace Microsoft.AspNetCore.Rewrite.Internal { _onApplyRule = onApplyRule; } - public override void ApplyRule(RewriteContext context) => _onApplyRule(context); + public void ApplyRule(RewriteContext context) => _onApplyRule(context); } } \ No newline at end of file diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/IISUrlRewriteRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/IISUrlRewriteRule.cs index ba6b718cd3..3dc0bce3f4 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/IISUrlRewriteRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/IISUrlRewriteRule.cs @@ -7,7 +7,7 @@ using Microsoft.AspNetCore.Rewrite.Logging; namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite { - public class IISUrlRewriteRule : Rule + public class IISUrlRewriteRule : IRule { public string Name { get; } public UrlMatch InitialMatch { get; } @@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite Action = action; } - public override void ApplyRule(RewriteContext context) + public virtual void ApplyRule(RewriteContext context) { // Due to the path string always having a leading slash, // remove it from the path before regex comparison diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/InputParser.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/InputParser.cs index e471248868..392680376f 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/InputParser.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/InputParser.cs @@ -14,7 +14,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite private const char CloseBrace = '}'; /// - /// Creates a pattern, which is a template to create a new test string to + /// Creates a pattern, which is a template to create a new test string to /// compare to the condition. Can contain server variables, back references, etc. /// /// @@ -64,7 +64,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite context.Mark(); // Four main cases: // 1. {NAME} - Server Variable, create lambda to get the part of the context - // 2. {R:1} - Rule parameter + // 2. {R:1} - IRule parameter // 3. {C:1} - Condition Parameter // 4. {function:xxx} - String function // (unless we support Reload) diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteFileParser.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteFileParser.cs index 3a2f603c07..a7f624f82f 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteFileParser.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteFileParser.cs @@ -22,7 +22,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite if (xmlRoot != null) { var result = new List(); - // TODO Global rules are currently not treated differently than normal rules, fix. + // TODO Global rules are currently not treated differently than normal rules, fix. // See: https://github.com/aspnet/BasicMiddleware/issues/59 ParseRules(xmlRoot.Descendants(RewriteTags.GlobalRules).FirstOrDefault(), result); ParseRules(xmlRoot.Descendants(RewriteTags.Rules).FirstOrDefault(), result); diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteRuleBuilder.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteRuleBuilder.cs index b4bf4260c4..c4edf77cca 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteRuleBuilder.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/IISUrlRewrite/UrlRewriteRuleBuilder.cs @@ -42,10 +42,10 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.IISUrlRewrite switch (actionType) { case ActionType.None: - _action = new VoidAction(stopProcessing ? RuleTermination.StopRules : RuleTermination.Continue); + _action = new VoidAction(stopProcessing ? RuleResult.SkipRemainingRules : RuleResult.ContinueRules); break; case ActionType.Rewrite: - _action = new RewriteAction(stopProcessing ? RuleTermination.StopRules : RuleTermination.Continue, + _action = new RewriteAction(stopProcessing ? RuleResult.SkipRemainingRules : RuleResult.ContinueRules, url, appendQueryString); break; case ActionType.Redirect: diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectRule.cs index 449ae293a4..2c9f471040 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectRule.cs @@ -8,7 +8,7 @@ using Microsoft.Net.Http.Headers; namespace Microsoft.AspNetCore.Rewrite.Internal { - public class RedirectRule : Rule + public class RedirectRule : IRule { private readonly TimeSpan _regexTimeout = TimeSpan.FromSeconds(1); public Regex InitialMatch { get; } @@ -31,7 +31,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal StatusCode = statusCode; } - public override void ApplyRule(RewriteContext context) + public virtual void ApplyRule(RewriteContext context) { var path = context.HttpContext.Request.Path; var pathBase = context.HttpContext.Request.PathBase; @@ -52,7 +52,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal var response = context.HttpContext.Response; response.StatusCode = StatusCode; - context.Result = RuleTermination.ResponseComplete; + context.Result = RuleResult.EndResponse; if (string.IsNullOrEmpty(newPath)) { diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectToHttpsRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectToHttpsRule.cs index 139b70d3e4..6127785b06 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectToHttpsRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/RedirectToHttpsRule.cs @@ -6,12 +6,12 @@ using Microsoft.AspNetCore.Http; namespace Microsoft.AspNetCore.Rewrite.Internal { - public class RedirectToHttpsRule : Rule + public class RedirectToHttpsRule : IRule { public int? SSLPort { get; set; } public int StatusCode { get; set; } - public override void ApplyRule(RewriteContext context) + public virtual void ApplyRule(RewriteContext context) { if (!context.HttpContext.Request.IsHttps) { @@ -31,7 +31,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal var newUrl = new StringBuilder().Append("https://").Append(host).Append(req.PathBase).Append(req.Path).Append(req.QueryString); context.HttpContext.Response.Redirect(newUrl.ToString()); - context.Result = RuleTermination.ResponseComplete; + context.Result = RuleResult.EndResponse; } } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/RewriteRule.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/RewriteRule.cs index 9bacf4963d..336c2ba87d 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/RewriteRule.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/RewriteRule.cs @@ -8,7 +8,7 @@ using Microsoft.AspNetCore.Http.Extensions; namespace Microsoft.AspNetCore.Rewrite.Internal { - public class RewriteRule : Rule + public class RewriteRule : IRule { private readonly TimeSpan _regexTimeout = TimeSpan.FromSeconds(1); public Regex InitialMatch { get; } @@ -31,7 +31,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal StopProcessing = stopProcessing; } - public override void ApplyRule(RewriteContext context) + public virtual void ApplyRule(RewriteContext context) { var path = context.HttpContext.Request.Path; Match initMatchResults; @@ -51,7 +51,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal if (StopProcessing) { - context.Result = RuleTermination.StopRules; + context.Result = RuleResult.SkipRemainingRules; } if (string.IsNullOrEmpty(result)) diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/ForbiddenAction.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/ForbiddenAction.cs index 08ad531d08..8e4058cc97 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/ForbiddenAction.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/ForbiddenAction.cs @@ -10,7 +10,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions public override void ApplyAction(RewriteContext context, MatchResults ruleMatch, MatchResults condMatch) { context.HttpContext.Response.StatusCode = StatusCodes.Status403Forbidden; - context.Result = RuleTermination.ResponseComplete; + context.Result = RuleResult.EndResponse; } } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/GoneAction.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/GoneAction.cs index 4a753c61da..a1e7b964e6 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/GoneAction.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/GoneAction.cs @@ -10,7 +10,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions public override void ApplyAction(RewriteContext context, MatchResults ruleMatch, MatchResults condMatch) { context.HttpContext.Response.StatusCode = StatusCodes.Status410Gone; - context.Result = RuleTermination.ResponseComplete; + context.Result = RuleResult.EndResponse; } } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RedirectAction.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RedirectAction.cs index 4d85531c87..9c917ed9a7 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RedirectAction.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RedirectAction.cs @@ -91,7 +91,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions response.Headers[HeaderNames.Location] = pathBase + pattern + context.HttpContext.Request.QueryString; } } - context.Result = RuleTermination.ResponseComplete; + context.Result = RuleResult.EndResponse; } } } diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RewriteAction.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RewriteAction.cs index 74264a9079..f6637747d5 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RewriteAction.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/RewriteAction.cs @@ -9,13 +9,13 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions { public class RewriteAction : UrlAction { - public RuleTermination Result { get; } + public RuleResult Result { get; } public bool QueryStringAppend { get; } public bool QueryStringDelete { get; } public bool EscapeBackReferences { get; } public RewriteAction( - RuleTermination result, + RuleResult result, Pattern pattern, bool queryStringAppend, bool queryStringDelete, @@ -31,7 +31,7 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions } public RewriteAction( - RuleTermination result, + RuleResult result, Pattern pattern, bool queryStringAppend) : this(result, diff --git a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/VoidAction.cs b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/VoidAction.cs index 4ac2a08144..6023b23a7a 100644 --- a/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/VoidAction.cs +++ b/src/Microsoft.AspNetCore.Rewrite/Internal/UrlActions/VoidAction.cs @@ -5,9 +5,9 @@ namespace Microsoft.AspNetCore.Rewrite.Internal.UrlActions { public class VoidAction : UrlAction { - public RuleTermination Result { get; } + public RuleResult Result { get; } - public VoidAction(RuleTermination result) + public VoidAction(RuleResult result) { Result = result; } diff --git a/src/Microsoft.AspNetCore.Rewrite/RewriteBuilderExtensions.cs b/src/Microsoft.AspNetCore.Rewrite/RewriteBuilderExtensions.cs index 724dccf3d1..0d577c3fd0 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RewriteBuilderExtensions.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RewriteBuilderExtensions.cs @@ -7,7 +7,7 @@ using Microsoft.AspNetCore.Rewrite; namespace Microsoft.AspNetCore.Builder { /// - /// Extension methods for the + /// Extension methods for the /// public static class RewriteBuilderExtensions { diff --git a/src/Microsoft.AspNetCore.Rewrite/RewriteContext.cs b/src/Microsoft.AspNetCore.Rewrite/RewriteContext.cs index d7dec645f7..061c45a18f 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RewriteContext.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RewriteContext.cs @@ -24,17 +24,16 @@ namespace Microsoft.AspNetCore.Rewrite public IFileProvider StaticFileProvider { get; set; } /// - /// Gets and sets the logger + /// Gets and sets the logger /// public ILogger Logger { get; set; } /// /// A shared result that is set appropriately by each rule for the next action that - /// should be take. See + /// should be taken. See /// - public RuleTermination Result { get; set; } + public RuleResult Result { get; set; } - // PERF: share the same string builder per request internal StringBuilder Builder { get; set; } = new StringBuilder(64); } } diff --git a/src/Microsoft.AspNetCore.Rewrite/RewriteMiddleware.cs b/src/Microsoft.AspNetCore.Rewrite/RewriteMiddleware.cs index 9f3802d395..58cd935690 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RewriteMiddleware.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RewriteMiddleware.cs @@ -69,7 +69,7 @@ namespace Microsoft.AspNetCore.Rewrite HttpContext = context, StaticFileProvider = _fileProvider, Logger = _logger, - Result = RuleTermination.Continue + Result = RuleResult.ContinueRules }; foreach (var rule in _options.Rules) @@ -77,15 +77,15 @@ namespace Microsoft.AspNetCore.Rewrite rule.ApplyRule(rewriteContext); switch (rewriteContext.Result) { - case RuleTermination.Continue: + case RuleResult.ContinueRules: _logger.RewriteMiddlewareRequestContinueResults(); break; - case RuleTermination.ResponseComplete: + case RuleResult.EndResponse: _logger.RewriteMiddlewareRequestResponseComplete( context.Response.Headers[HeaderNames.Location], context.Response.StatusCode); return TaskCache.CompletedTask; - case RuleTermination.StopRules: + case RuleResult.SkipRemainingRules: _logger.RewriteMiddlewareRequestStopRules(); return _next(context); default: diff --git a/src/Microsoft.AspNetCore.Rewrite/RewriteOptions.cs b/src/Microsoft.AspNetCore.Rewrite/RewriteOptions.cs index 8e51c78071..cbff5975fd 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RewriteOptions.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RewriteOptions.cs @@ -8,14 +8,14 @@ using Microsoft.AspNetCore.Hosting; namespace Microsoft.AspNetCore.Rewrite { /// - /// Options for the + /// Options for the /// public class RewriteOptions { /// - /// A list of that will be applied in order upon a request. + /// A list of that will be applied in order upon a request. /// - public IList Rules { get; } = new List(); + public IList Rules { get; } = new List(); /// /// Gets and sets the File Provider for file and directory checks. Defaults to diff --git a/src/Microsoft.AspNetCore.Rewrite/RewriteOptionsExtensions.cs b/src/Microsoft.AspNetCore.Rewrite/RewriteOptionsExtensions.cs index 5b9eec9e88..b1b4057cd4 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RewriteOptionsExtensions.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RewriteOptionsExtensions.cs @@ -17,7 +17,7 @@ namespace Microsoft.AspNetCore.Rewrite /// The . /// A rule to be added to the current rules. /// The Rewrite options. - public static RewriteOptions Add(this RewriteOptions options, Rule rule) + public static RewriteOptions Add(this RewriteOptions options, IRule rule) { options.Rules.Add(rule); return options; @@ -44,7 +44,7 @@ namespace Microsoft.AspNetCore.Rewrite /// The Rewrite options. public static RewriteOptions AddRewrite(this RewriteOptions options, string regex, string replacement) { - return AddRewrite(options, regex, replacement, stopProcessing: false); + return AddRewrite(options, regex, replacement, skipRemainingRules: false); } /// @@ -53,11 +53,11 @@ namespace Microsoft.AspNetCore.Rewrite /// The . /// The regex string to compare with. /// If the regex matches, what to replace the uri with. - /// If the regex matches, conditionally stop processing other rules. + /// If the regex matches, conditionally stop processing other rules. /// The Rewrite options. - public static RewriteOptions AddRewrite(this RewriteOptions options, string regex, string replacement, bool stopProcessing) + public static RewriteOptions AddRewrite(this RewriteOptions options, string regex, string replacement, bool skipRemainingRules) { - options.Rules.Add(new RewriteRule(regex, replacement, stopProcessing)); + options.Rules.Add(new RewriteRule(regex, replacement, skipRemainingRules)); return options; } diff --git a/src/Microsoft.AspNetCore.Rewrite/RuleTermination.cs b/src/Microsoft.AspNetCore.Rewrite/RuleResult.cs similarity index 74% rename from src/Microsoft.AspNetCore.Rewrite/RuleTermination.cs rename to src/Microsoft.AspNetCore.Rewrite/RuleResult.cs index 70f5c9f39f..9e62b0511b 100644 --- a/src/Microsoft.AspNetCore.Rewrite/RuleTermination.cs +++ b/src/Microsoft.AspNetCore.Rewrite/RuleResult.cs @@ -6,19 +6,19 @@ namespace Microsoft.AspNetCore.Rewrite /// /// An enum representing the result of a rule. /// - public enum RuleTermination + public enum RuleResult { /// /// Default value, continue applying rules. /// - Continue, + ContinueRules, /// - /// Redirect occured, should send back new rewritten url. - /// - ResponseComplete, + /// The rule ended the request by providing a response. + /// + EndResponse, /// /// Stop applying rules and send context to the next middleware /// - StopRules + SkipRemainingRules } } diff --git a/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/FileParserTests.cs b/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/FileParserTests.cs index afa76bb395..b891b3a2c5 100644 --- a/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/FileParserTests.cs +++ b/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/FileParserTests.cs @@ -147,7 +147,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite ) { return new IISUrlRewriteRule(name, new RegexMatch(new Regex("^OFF$"), false), conditions, - new RewriteAction(RuleTermination.Continue, new InputParser().ParseInputString(url), queryStringAppend: false)); + new RewriteAction(RuleResult.ContinueRules, new InputParser().ParseInputString(url), queryStringAppend: false)); } // TODO make rules comparable? diff --git a/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/UrlRewriteApplicationTests.cs b/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/UrlRewriteApplicationTests.cs index bbb04f1f7e..83958e6c99 100644 --- a/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/UrlRewriteApplicationTests.cs +++ b/test/Microsoft.AspNetCore.Rewrite.Tests/IISUrlRewrite/UrlRewriteApplicationTests.cs @@ -9,7 +9,7 @@ using Xunit; namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite { - // TODO add more of these + // TODO add more of these public class UrlRewriteApplicationTests { [Fact] @@ -17,10 +17,10 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite { var xml = new StringReader(@" - + - + "); var rules = new UrlRewriteFileParser().Parse(xml); @@ -28,7 +28,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite Assert.Equal(rules.Count, 1); var context = new RewriteContext { HttpContext = new DefaultHttpContext() }; rules.FirstOrDefault().ApplyRule(context); - Assert.Equal(context.Result, RuleTermination.StopRules); + Assert.Equal(context.Result, RuleResult.SkipRemainingRules); } [Fact] @@ -39,7 +39,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite - + "); var rules = new UrlRewriteFileParser().Parse(xml); @@ -47,7 +47,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlRewrite Assert.Equal(rules.Count, 1); var context = new RewriteContext { HttpContext = new DefaultHttpContext() }; rules.FirstOrDefault().ApplyRule(context); - Assert.Equal(context.Result, RuleTermination.Continue); + Assert.Equal(context.Result, RuleResult.ContinueRules); } } } diff --git a/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/ForbiddenActionTests.cs b/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/ForbiddenActionTests.cs index fa668e29d6..fa141844cc 100644 --- a/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/ForbiddenActionTests.cs +++ b/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/ForbiddenActionTests.cs @@ -20,7 +20,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlActions action.ApplyAction(context, null, null); // Assert - Assert.Equal(context.Result, RuleTermination.ResponseComplete); + Assert.Equal(context.Result, RuleResult.EndResponse); Assert.Equal(context.HttpContext.Response.StatusCode, StatusCodes.Status403Forbidden); } } diff --git a/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/GoneActionTests.cs b/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/GoneActionTests.cs index ed061dd929..e72c6c67ce 100644 --- a/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/GoneActionTests.cs +++ b/test/Microsoft.AspNetCore.Rewrite.Tests/UrlActions/GoneActionTests.cs @@ -20,7 +20,7 @@ namespace Microsoft.AspNetCore.Rewrite.Tests.UrlActions action.ApplyAction(context, null, null); // Assert - Assert.Equal(context.Result, RuleTermination.ResponseComplete); + Assert.Equal(context.Result, RuleResult.EndResponse); Assert.Equal(context.HttpContext.Response.StatusCode, StatusCodes.Status410Gone); } }