Commit Graph

14 Commits

Author SHA1 Message Date
Ryan Nowak 9db2833fc2 Make endpoint selector policies per-candidate-set
This allows us to filter `IEndpointSelectorPolicy` instance based on
whether the apply to a given candidate set. This should allow us to
remove some HAXXX from MVC.

The idea here is the ESP becomes much more pay-for-play if you can
statically eliminate many of the cases where it would usually no op.
2018-10-05 21:03:59 -07:00
Ryan Nowak 3227de8c0b Fix #629 - Add logging to DfaMatcther
Adds logging for the most common things that can prevent an endpoint
from matching.

Note that we already have good logging in other parts of the system, the
stuff here completes the story by providing details at the debug level.
2018-09-30 15:59:25 -07:00
James Newton-King 1c74973c6a
Minor matcher builder allocation optimization (#771) 2018-09-06 13:47:34 +12:00
James Newton-King dbebdbecd6
Add flag for including label with DfaNodes (#769) 2018-09-06 13:38:17 +12:00
James Newton-King fe8c633224
Optimize builder and HTTP policy allocations (#768) 2018-09-06 13:25:35 +12:00
James Newton-King abc378d3dc
Avoid resizing large struct arrays (#767) 2018-09-06 13:10:17 +12:00
James Newton-King 0f5d471dfd
Create collections on DfaNode as needed (#779) 2018-09-06 12:58:57 +12:00
James Newton-King a777a4cdd5
Reuse collections in DfaMatcherBuilder (#778) 2018-09-06 12:25:45 +12:00
James Newton-King 40fb13a021
Fix DfaMatcher to work with non-RouteEndpoint (#739) 2018-08-24 09:11:13 +12:00
James Newton-King 1680b9f4fc
Change endpoint invoker to RequestDelegate, Endpoint/EndpointMetadataCollection namespaces, split out IRouteValuesFeature (#712) 2018-08-22 17:15:57 +12:00
James Newton-King 08a0a7fadb
Remove MatchProcessor, add IParameterPolicy (#734) 2018-08-22 15:24:34 +12:00
Ryan Nowak e09b88ebd6 Tokenize Less 2018-08-14 15:31:38 -07:00
Ryan Nowak 12cb35894e Add support for GraphViz
Adds **internal** support for dumping a route table to GraphViz DOT
notation. This allows us to dump the DFA graph for a route table and
visualize it.

Example:
https://gist.github.com/rynowak/2b24e4a6a602ca6f9c4de3ec227d621b
2018-08-08 21:36:39 -07:00
James Newton-King 8c4f187c22
Endpoint routing rename and API review changes (#684) 2018-08-02 13:38:08 +12:00